QT 네트워크 프로 그래 밍:QNetworkAccessManager 를 사용 하여 post 요청 업로드
프로젝트 개발 에 있어 서 장치 단말 기 는 서버 에 로그 나 보고 상태 정 보 를 자주 업로드 해 야 합 니 다.다음은 QNetworkAccessManager 를 사용 하여 업로드 할 데 이 터 를 전송 하여 업로드 할 수 있 는 함 수 를 봉인 합 니 다.제출 한 데이터 형식 은 JSON 형식 을 사용 하고 요청 방식 은 post 를 사용 합 니 다.코드 에 관련 상태 슬롯 함수 가 없고 실제 운용 에서 업로드 한 데이터 의 양 이 비교적 적 으 며 데 이 터 는 중단 적 으로 중복 업로드 되 어 성공 상 태 를 판단 하지 못 합 니 다.
핵심 코드
#define TOKEN "abc-def-ghi-jkl-mno"
QString DeviceID="123456789";
QNetworkAccessManager SendErrorInfo_manager;
void SERVER_SendErrorInfo(QString text)
{
//
QString requestUrl;
QNetworkRequest request;
//
requestUrl="http://192.168.1.123:6666/carmonitorsys/errlog/upload.action?";
requestUrl+=QString("token=%1&").arg(TOKEN); //
requestUrl+=QString("devId=%1").arg(DeviceID); //
//
QUrl url;
url.setUrl(requestUrl);
request.setUrl(url);
request.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("application/json"));
//
QJsonObject post_data;
QJsonDocument document;
QByteArray post_param;
post_data.insert("msg",text); //
document.setObject(post_data);
post_param = document.toJson(QJsonDocument::Compact);
//
SendErrorInfo_manager.post(request,post_param);
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간편한 채팅 시스템 - 메시지 전달 서버메시지 전송 서버는 메시지 대기열에서 온 데이터를 받아들여 디코딩, 식별 등을 하고 마지막으로 분류를 나눈다.예를 들어 채팅 시스템은 같은 그룹과 같은 세션의 정보를 같은 그룹 서비스로 전송한다(물론 아직 같은 그룹...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.