![](/img/trans.png)
[英]PlayFramework returns BadRequest with content-type application/json
[英]Pocket authentication returns BadRequest with content-type 'application/json'
我正在檢索Pocket API的訪問令牌。 我可以使用內容類型為application/x-www-form-urlencoded
的Http POST請求成功完成此application/x-www-form-urlencoded
。
{
host: 'getpocket.com',
path: '/v3/oauth/authorize',
port: 443,
method: 'POST',
headers:
{ 'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length': 79 }
}
但是Pocket也支持內容類型為application/json
。
{
host: 'getpocket.com',
path: '/v3/oauth/authorize',
port: 443,
method: 'POST',
headers: { 'Content-Type': 'application/json', 'Content-Length': 79 }
}
但是使用這種類型的請求會返回我
“ 400錯誤請求”
我在nodejs上執行此操作。 我是否需要傳遞任何其他詳細信息,例如“ X-Accept”(不知道怎么做)。
我認為Pocket報告了一個錯誤的請求,因為您正在發送表單編碼的數據,同時在Content-Type
Header中將其聲明為JSON。
如果要以JSON格式將數據發送到Pocket,請設置Content-Type: application/json; charset=UTF8
Content-Type: application/json; charset=UTF8
。
如果要接收 JSON格式的數據,請設置X-Accept: application/json
。
要在HTTP請求中包含自定義標頭,只需在發送req.headers
前將名稱值對添加到req.headers
即可。 例如:
headers: { 'Content-Type': 'application/x-www-form-urlencoded', 'X-Accept' : 'application/json'}
要么:
req.headers['X-Accept'] = 'application/json'
看看https://nodejs.org/api/http.html#http_http_request_options_callback 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.