我想向具有字符串作为其参数的C#服务发送请求。我写了这样的 Angular 服务:

export class CategoryService {

  constructor(private http: HttpClient) { }
  getCategory(categoryName: string): Observable<Category> {
    console.log(categoryName);
    return this.http.post("/category/GetCategory", { categoryName: categoryName }, { headers: new HttpHeaders({ 'Content-type': 'application/json' }) });
  }

我也尝试过:
export class CategoryService {

  constructor(private http: HttpClient) { }
  getCategory(categoryName: string): Observable<Category> {
    console.log(categoryName);
    return this.http.post("/category/GetCategory",  categoryName , { headers: new HttpHeaders({ 'Content-type': 'application/json' }) });
  }

但是,当他们俩都成功发送请求时,该参数始终为null。
我的C#服务是:
    [HttpPost]
    public IActionResult GetCategory([FromBody]string categoryName)

最佳答案

我在这里找到解决方案:
Angular2 - Http POST request parameters
我还应该从我的服务参数中删除[FromBody]。

关于javascript - Angular HttpClient发布无法发送简单的字符串参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53457174/

10-09 22:04