私のノードアプリケーションプロジェクトで、Twitter APIをv1.0からv1.1に移行しました。私のログファイルにはいくつかのエラーがあります。Twitter API 1.1のバグまたは仕様変更
エラー
{"message":"Could not authenticate you","code":32}
原因
(1.1 /ステータス/更新まで)ポストデータが
- ...など、されている場合、このエラーは、発生しました!
- 「
- (
- )
- *
ソリューション
私は、パッチを適用しているnode_modules/OAuthの唯一のリンパ節転移使用ノードのOAuth(の/ libに/ oauth.js twitter)...
327 if((method == "POST" || method == "PUT") && (post_body == null && extra_params != null)) {
328 post_body= querystring.stringify(extra_params);
329 }
327 if((method == "POST" || method == "PUT") && (post_body == null && extra_params != null)) {
328 post_body= querystring.stringify(extra_params);
+331 post_body= post_body.replace(/\!/g, "%21")
+332 .replace(/\'/g, "%27")
+333 .replace(/\(/g, "%28")
+334 .replace(/\)/g, "%29")
+335 .replace(/\*/g, "%2A");
336 }
にTwitterのAPI v1.0のは、このパッチを必要としません。このパッチは、v1.1だけが投稿本体をダブルエスケープする必要があります。私は、これは、ノードのOAuth問題やTwitterのAPIである私の質問
...この変更は、他のOAuthサービスのために、このライブラリを使用することができなくなりますので、私のパッチは、普遍的ではありません
- を考えます問題(Twitterの仕様変更やバグ)?
- この問題は誰に報告してください。