2014-01-18 3 views
2

Qt 5.1.1을 사용하여 웹 서비스에 약간의 json 데이터를 보내려고합니다. 많은 예제가 있지만 거의 모든 것이 Qt 4.x 용이며 약간 다른 API를 가지고 있습니다. 여기에 내가 지금 시험해보고있는 것이있다 :Qt 5로 서버에 데이터를 POST하는 방법은 무엇입니까?

QUrl url("http://..."); 
QNetworkRequest request(url); 
request.setHeader(QNetworkRequest::ContentTypeHeader, "application/x-www-form-urlencoded"); 
QByteArray jsonInPostFormat = "json=" + QUrl::toPercentEncoding(jsonAsString); 
jsonInPostFormat.replace("%20","+"); 
reply = net->post(request, jsonInPostFormat); 
connect(reply, SIGNAL(finished()), this, SLOT(finishedAddComment())); 

위의 사항은 ... 효과가 없다. 내가 올바르게 일을하고 있다면 서버에서 응답을 얻지 못하는 것 같습니다. (finishedAddComment()에서 reply-> readALL()을 호출합니다.

서비스가 제대로 작동하는 테스트 양식을 가지고 있습니다. 나는 헤더를 보내고 html을 보았습니다. html은 post 메소드가 지정된 표준 양식입니다.

나는 분명히 잘못된 것을하고 있습니까? QUrlQuery를 사용하면 더 좋은 방법이 있을까요?

Qt는 실제로 슈퍼 도움이 될 것입니다 보내는 원시 HTML 요청을 보는 몇 가지 방법 ...

감사합니다! 타일러

답변

3

Qt5에는 더 이상 QUrl :: encodedQuery() 메서드가 없습니다. 확실하지는 않지만 문서에서 대신 QUrl :: query() 메서드를 사용하여 작동 할 수도 있습니다.

희망이 있습니다.

관련 문제