Разместить запрос с использованием файлов cookie с cURL, RCurl и httr
В Windows CURL я могу опубликовать веб-запрос, похожий на этот:
curl --dump-header cook.txt ^
--data "RURL=http=//www.example.com/r&user=bob&password=hello" ^
--user-agent "Mozilla/5.0" ^
http://www.example.com/login
Сtype cook.txt
Я получаю ответ, похожий на этот:
HTTP/1.1 302 Found
Date: Thu, ******
Server: Microsoft-IIS/6.0
SERVER: ******
X-Powered-By: ASP.NET
X-AspNet-Version: 1.1.4322
Location: ******
Set-Cookie: Cookie1=; domain=******; expires=****** ******
******
******
Cache-Control: private
Content-Type: text/html; charset=iso-8859-1
Content-Length: 189
Я могу вручную прочитать строки cookie, такие как:Set-Cookie: AuthCode=ABC...
(Я мог бы написать это, конечно). Так что я могу использоватьAuthCode
для последующих запросов.
Я пытаюсь сделать то же самое в R с RCurl и / или httr (до сих пор нене знаю, какой из них лучше для моей задачи).
Когда я пытаюсь:
library(httr)
POST("http://www.example.com/login",
body= list(RURL="http=//www.example.com/r",
user="bob", password="hello"),
user_agent("Mozilla/5.0"))
Я получаю ответ, похожий на этот:
Response [http://www.example.com/error]
Status: 411
Content-type: text/html
Length Required
По большому счету я знаю об ошибке 411 и могу попытаться исправить запрос; но я не получаю его в cURL, поэтому я делаю что-то не так с командой POST.
Можете ли вы помочь мне в переводе моей команды cURL в RCurl и / или httr?