POST http:// localhost:3000 / claimdetails 500(内部服务器错误)

时间:2017-05-17 06:23:18

标签: typescript http-post angular2-services web-frontend

我正在尝试将对象发布到json服务器,但是我收到了500内部服务器错误。以下是我的代码。

app.service

  createService(url: string, param: any): Promise<any> {
let body = JSON.stringify(param);
return this.http
  .post(url, body, this.options)
  .toPromise()
  .then(this.extractData)
  .catch(this.handleError);}

组件

  save() {
var json = JSON.stringify({
  purpose: this.purpose
});

this.appService
  .createService('http://localhost:3000/claimdetails', json)
  .then(result => console.log("5. createService: " + result))
  .catch(error => console.log(error));}

错误error

1 个答案:

答案 0 :(得分:0)

您使用了JSON.stringify()两次。将json变量传递给JSON时,您的json变量已经createService()

我只会将其保留在createService()

注意: 不要在.toPromise()上使用observables。您可以使用observables执行相同操作,无需promises

createService(url: string, param: any): Observable<any> {
    let body = JSON.stringify(param);
    return this.http
        .post(url, body, this.options)
        .map(this.extractData)
        .catch(this.handleError);
}

然后在您的组件中订阅