我必須提出要求。問題是,將它作爲api公開的應用程序已將它的Content-Type設置爲「text/plain」。我試過RCurl包和httpRequest包,但無法弄清楚如何設置內容類型。我試圖直接向一個沒有該內容類型的URL發佈postrequest,然後postForm工作。這裏有幫助嗎?如何在R中的POST請求中設置content-type?
編輯:我會盡力解釋我需要在這裏做什麼。我有一個網址。我需要傳遞一些參數是這樣的
POST to "url/agents/where/agent?="Smith"
這是,如果你使用REST控制檯擴展在Chrome瀏覽器進行Web服務調用你鍵入的內容進行POST請求它。我需要通過設置內容類型,使這個來自R爲「text/plain的」
我已經試過是這樣,
postForm("url/agents/get/all")
這就像一個魅力的說,在我們的情況下,Web服務調用因爲調用所有的代理不需要content-type爲「text/plain」,也不需要傳遞任何參數(例如,沒有特定的代理名稱,因爲我想要所有的代理名稱)。我想我已經想出瞭如何通過給列表中的名稱值對傳遞一個參數給.opts。我無法弄清楚的是如何設置內容類型。
我都試過,但失敗了,
postForm("url/agents/where",
.opts = list(postfields = toJSON(list("name" = "Smith")),
httpheader = c('Content-Type' = 'text/plain', ssl.verifypeer = FALSE)))
嘿謝謝你的答案。我很抱歉,但由於我的公司政策,我將無法分享我試圖打的實際代碼和網址。而隨着Web服務的暴露由其他團隊完成,我無法生成一個簡單的示例。我會嘗試你的答案並回復你。 – Avinash
@Avinash那麼,你可以省略網址,我主要是你使用了哪些命令以及你想傳遞什麼參數。看到我的編輯,我忘了示例中的第一行。 – Thomas
curlPerform試圖從它做出一個GET請求。我需要做一個POST請求。我會試着解釋我在這個問題上做了什麼。 – Avinash