次のようなモジュール で PasteBin APIを使用して、新しいペーストを作成しようとしています。request
var request = require("request");
request({
url : "http://pastebin.com/api/api_post.php",
method : "POST",
qs : {
"api_dev_key" : MY_DEV_KEY,
"api_option" : "paste",
"api_paste_code" : "random text"
}
},function(err,res,body){
...
});
私の理解では、メソッドはPOST
クエリ文字列パラメーターが提供されているため、オブジェクトの値は本体にペアqs
として格納されます。key=value
(参照: HTTP POST リクエストでパラメーターはどのように送信されますか? )
ただし、Bad API request, invalid api_option
PasteBin からは a が返されます。だから私curl
は自分の端末からのリクエストを次のように編集しました:
curl -X POST "http://pastebin.com/api/api_post.php" -d "api_dev_key=[MY_DEV_KEY]&api_option=paste&api_paste_code=some+random+text"
そしてこれはうまくいきました。
したがって、これは 2 つの質問につながります。
POST
リクエストが作成されて提供されたときに、パラメータはどの程度正確に送信qs
されますか?request
モジュールだけを使用して URL エンコードされた本文を送信するにはどうすればよいですか?