如何在角度4中的标头中传递自定义数据

时间:2018-01-18 06:11:32

标签: angular typescript ionic3

这是我的提供商代码,我在其中传递了多个数据

import pyarrow.parquet as pq
pq.write_table(table, outputPath, compression='snappy',
    use_deprecated_int96_timestamps=True)

这是我的评论ts代码

  postEventComment(body,headers){
      return this.http.post(this.api_comment_event, body,{ headers: {'Content-Type' :'multipart/form-data','userId':'1451'} })
      .do((res: Response) => console.log(res))
      // .map((res: Response) => res.json())
      .catch(this.catchError)
      }

以下是我的屏幕截图error getting in console

Not getting exact header which I am passing in my code

3 个答案:

答案 0 :(得分:0)

你应该使用这样的东西。

<强>码

this.body2 = 'eventId' + '=' + id + '&comment=' + this.body.comment  
let headers = new Headers();
headers.append('Content-Type', 'multipart/form-data');
headers.append('userId', 123);
let opts = new RequestOptions();
opts.headers = headers;
this.api_list.postEventComment(this.body2 , opts).subscribe(data =>  {
console.log(data);});

答案 1 :(得分:0)

在您的情况下,根据您的API,您在错误的位置使用userId。而不是那样,你应该传递身份验证令牌。对此的解决方案主要取决于您正在使用的API。

顺便说一句,你可以使用这样的标题:

strcpy(str[i], "newstring")

并将此消息传递给您:

const headers: Headers = new Headers({
  'Content-Type': 'multipart/form-data',
  'userId': '123'
});

不要忘记导入标题:

this.http.post(this.api_comment_event, body,{ headers: headers })

如果可能,请分享API详细信息以获得更准确的答案。

答案 2 :(得分:0)

这是该问题的详细答案:

  

从Angular端将数据传递到HTTP标头(首选版本> = angular 4)

我们可以通过多种方式将数据传递到标头中。 语法不同,但是含义相同。

// Option 1 
 const httpOptions = {
   headers: new HttpHeaders({
     'ID': emp.UserID,
   })
 };


// Option 2

let httpHeaders = new HttpHeaders();
httpHeaders = httpHeaders.append('ID', '001');

let options = {headers:httpHeaders};


// Option 1 Call the Web API Url.
   return this.http.post(this.url + 'testMethod', body,httpOptions)

// Option 2 Call the Web API Url.
   return this.http.post(this.url + 'testMethod', body,options)

在通话中,您可以找到作为标题传递的字段,如下图所示(在浏览器中,转到“网络”选项卡):

enter image description here