Angular 7未将发布数据发送到API

时间:2019-02-20 16:08:23

标签: angular typescript asp.net-web-api httpclient

我有一个asp.net后端服务。后端api在postman

中正常工作

enter image description here

,但是从角度做同样的事情是行不通的。正文不会发送到服务器。我正在使用角度7。

这是我的代码。

乳制品服务

public addNewDairy(value) {
    return this.http.post(this.apiUrl + "dairy", value)
      .pipe(
        map(success => success),
        catchError(this.hes.handleError) // then handle the error
      );
  }

和组件

requestForRegistration(value) {
    this.jqxLoader.open();
    this.ds.addNewDairy(value).subscribe(res => {
      this.jqxLoader.close();
      this.message = "Requested for activation.";
      this.notification.open();
    }, error => {
      console.log(error);
      this.jqxLoader.close();
      this.message = "Something went wrong please try again!";
      this.notification.open();
    });
  }

enter image description here

1 个答案:

答案 0 :(得分:0)

204来自浏览器作为跨域请求发送的OPTIONS请求。一旦OPTIONS请求成功返回200,您的实际请求就会增加。邮递员不会发送OPTIONS请求,因为您将直接转到该实例中的API。您的Angular看起来不错-我会在您的asp.net后端验证是否启用了CORS-请参见此处https://docs.microsoft.com/en-us/aspnet/web-api/overview/security/enabling-cross-origin-requests-in-web-api#enable-cors