Я пытаюсь создать новую вставку с помощью 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. Итак, я 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"
и это сработало.
Таким образом, это приводит к двум вопросам:
- Как именно отправляются параметры, когда делается запрос
POST
и предоставляетсяqs
? - Как отправить тело в кодировке URL, используя только модуль
request
?