如何在使用Typescript的API发布请求中使用Body参数

时间:2019-01-21 17:29:27

标签: angular typescript api http bad-request

我想知道如何使用打字稿将主体添加到api请求中。我已经对邮递员做了这个请求,我得到了回应,但是我不知道如何使用打字稿来做。我不断收到“错误请求”。我从主机上检查了api文档,他们向我展示了如何做:

Request Format
POST https://api.channeladvisor.com/oauth2/token

Authorization: Basic [application id:shared secret]
Content-Type: application/x-www-form-urlencoded
Body: grant_type = refresh_token &
      refresh_token = [refresh token]

我有刷新令牌和授权详细信息。所以我尝试在打字稿中这样做:

this.http.post('https://api.channeladvisor.com/oauth2/token',                    
  {body:{
    grant_type:"refresh_token",
    refresh_token:this.refresh_token
  }},

  {headers:{
    'Authorization':this.token
    }})
.subscribe((response)=>{
    this.new_token=response;
    console.log("This is the new token")
      console.log(this.new_token)
  })
}

但是当我运行它时,我得到一个错误的请求错误。我认为这与语法有关。

1 个答案:

答案 0 :(得分:0)

您有以下身体要求:

filtersModal.js

内容类型为 grant_type = refresh_token & refresh_token = [refresh token]

错误

您的代码:

application/x-www-form-urlencoded

将以json格式的正文发送this.http.post('https://api.channeladvisor.com/oauth2/token', {body:{ grant_type:"refresh_token", refresh_token:this.refresh_token }}, content-type

修复

固定代码:

application/json