动态后置调用在角度5上给出错误404

时间:2018-05-30 11:35:33

标签: javascript angular5 httpclient

我正在进行一个帖子调用,其中post参数从另一个get调用获取。 如果我手动传递post参数,它的工作正常。

doPost(): Observable<any> {
    return this.http.post(this.URL+ '/GetEmp', {emp:[{"empId":8106, "name":"xxxxx"}]});    
}

但是当我动态调用它时显示404错误

doPost(val): Observable<any> {
    this.postD = JSON.stringify(val);
    return this.http.post(this.URL+ '/GetEmp', {emp:this.postD});    
}

我在这里打电话

this.configs.doPost(pval).subscribe(
    data => {this.post = data['org']},           
    err => console.error(err),
    () => console.log('done loading employee' + this.post)
);

要求是我正在发出一个GET请求,通过我获取值并填充下拉列表,一旦我从下拉列表中选择了值,这个值就需要在post调用中用于参数。

在这里,我可以从下拉列表中获取值,但是一旦我通过post请求传递它,它会给出404错误。

请帮助解决这个问题。

1 个答案:

答案 0 :(得分:0)

hTTP post需要一个对象,所以请不要stringify

doPost(val): Observable<any> {
    return this.http.post(this.URL+ '/GetEmp', { emp: val });    
}

以下是语法:

post(url: string, body: any, options?: RequestOptionsArgs) :

  • 可观察网址:这是我们发布数据的HTTP网址
    到服务器。
  • 正文:这是我们需要发布到服务器的对象。
  • 选项:这是可选的。这里我们传递了实例 RequestOptionsArgs使用标题。
  • 可观察:这是Http.post()的返回类型。