リクエスト トークンを取得するための http ポスト リクエストをポケット API に送信できません。私はすでにコンシューマーキーを持っています。問題は、ヘッダーの設定とリクエストでのデータの送信にあるようです。ブラウザで表示した場合、リクエストにはヘッダーとデータが表示されません。
リクエストの構成
var req = {
method:'POST',
url:'https://getpocket.com/v3/oauth/request',
headers: { 'Content-Type': "application/x-www-form-urlencoded; charset=UTF8",
'X-Accept':'application/x-www-form-urlencoded'
},
transformRequest: function(obj) {
var str = [];
for(var p in obj)
str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));
return str.join("&");
},
data: pocket_data
};
$http(req).then(function(result){console.log(result);
},function(error){
console.log(error);
});
ブラウザからのリクエスト。リクエストメソッドが POST ではなく OPTIONS である理由がわかりません。
Request URL:https://getpocket.com/v3/oauth/request
Request Method:OPTIONS
Status Code:400 Bad Request
Remote Address:52.0.87.91:443
送信された応答ヘッダーと要求ヘッダー。application/x-www-form-urlencoded に設定したときに content-type が text/html である理由がわかりません。
**Response Headers**
view source
Cache-Control:private
Connection:keep-alive
Content-Length:15
Content-Type:text/html; charset=UTF-8
Date:Thu, 04 Feb 2016 07:22:35 GMT
Expires:Thu, 19 Nov 1981 08:52:00 GMT
P3P:policyref="/w3c/p3p.xml", CP="ALL CURa ADMa DEVa OUR IND UNI COM NAV INT STA PRE"
Pragma:no-cache
Server:Apache
Set-Cookie:PHPSESSID=ogqn0s0gmjpo24j6oo6rlj6vm6; path=/
Status:400 Bad Request
X-Error:Missing consumer key.
X-Error-Code:138
X-Source:Pocket
**Request Headers**
Accept:*/*
Accept-Encoding:gzip, deflate, sdch
Accept-Language:en-US,en;q=0.8
Access-Control-Request-Headers:accept, content-type, x-accept
Access-Control-Request-Method:POST
Cache-Control:no-cache
Connection:keep-alive
Host:getpocket.com
Origin:http://localhost:9000
Pragma:no-cache
Referer:http://localhost:9000/create
content-type を 'application/json' に設定しようとしましたが、うまくいきませんでした。 ポケットの API ドキュメント。