2012-06-23 4 views
2

목록을 JSON으로 인코딩하고 압축을 gzip으로 압축하고 RCurl의 POST 요청을 사용하여 서버로 보내려고합니다. 그러나POST 요청을 통해 gzipped 데이터 보내기

# COMPRESS THE REQUEST 
all <- list(this=1,is=2,a=3,list=4) 
json <- toJSON(all) 
gzip <- gzip(json) 

# SEND IT TO THE SERVER 
status <- postForm(SERVER_URI,data=fileUpload(contents=gzip,contentType="application/x-gzip"),style="HTTPPOST",binary=TRUE) 

, 나는 서버에 데이터를 게시하려고 할 때, 나는 다음과 같은 오류 얻을 :

Error in postForm(SERVER_URI, data = gzip) : 
    STRING_ELT() can only be applied to a 'character vector', not a 'raw' 

내가 GZIP 데이터가 원시 형식이며, postForm 기능이 좋아하지 않는 것을 이해를 그,하지만 난 어떻게 POST 요청을 통해 서버로 원시 데이터를 보내고 문제를 해결하기 위해 명확하지 않다.

답변

1

RCurl의 공식 paper은 POSTing 바이너리 데이터가 아직 구현되지 않았으며 "향후 작업"아래 문서에 나열되어 있다고 명시합니다. 그래서, 문서가 출판 된 이래로 아직 RCurl에 대한 해결책이 없습니다.

+0

저에게 그 종이를 가르쳐 주셔서 감사합니다. 다른 접근법을 찾아야 할 것 같습니다. –

관련 문제