Трябва да направя заявка за публикация. Проблемът е, че приложението, което излага своя api като уеб услуга, е задало своя Content-Type на „text/plain“. Опитах пакета RCurl и пакета httpRequest, но не можах да разбера как да задам типа съдържание. Опитах се директно да направя postrequest към URL, който няма този тип съдържание, след което postForm проработи. Някаква помощ тук?
РЕДАКТИРАНЕ: Ще се опитам да обясня какво трябва да направя тук. Имам url. Трябва да направя POST заявки към него, като му предам някои параметри нещо подобно
POST to "url/agents/where/agent?="Smith"
Това е, което бихте въвели, ако използвате разширението на конзолата REST в chrome за извършване на повиквания към уеб услуги. Трябва да направя това от R, като задам тип съдържание на "text/plain"
Това, което опитах е това,
postForm("url/agents/get/all")
Това работи като чар, тъй като в нашия случай извикването на уеб услугата за извикване на всички агенти не изисква типът съдържание да бъде "текст/обикновен" и също така не изисква никакви параметри да му бъдат предавани (напр. няма конкретен агент име както искам всички). Мисля, че разбрах как да предам параметър, като дам двойки стойности на имена в списък на .opts. Това, което не мога да разбера, е как да задам тип съдържание.
Опитах това, но не успя,
postForm("url/agents/where",
.opts = list(postfields = toJSON(list("name" = "Smith")),
httpheader = c('Content-Type' = 'text/plain', ssl.verifypeer = FALSE)))