gpt4 book ai didi

Qt multipart post问题

转载 作者:可可西里 更新时间:2023-11-01 16:31:10 25 4
gpt4 key购买 nike

我需要有关发送多部分发布请求的帮助。主要问题是服务器无法识别我请求的帖子正文部分。服务器端在 android 上运行良好,但在 Qt 和 NetworkAccessManager 上运行不佳。

代码如下:

在这里,我将 bodyPart 与请求一起发送(transferData 是一个带有一些文本的 QByteArray):

postBody.append("\r\n--"+ boundary + "\r\n");
postBody.append("Content-Disposition: form-data; name=\"auth\" \r\n");
postBody.append(" \r\n");
postBody.append(auth + " \r\n");
postBody.append("--"+ boundary + "\r\n");
postBody.append("Content-Disposition: form-data; name=\"upload-test-data\" \r\n");
postBody.append(" \r\n");
postBody.append(transferData + " \r\n");
postBody.append("--"+ boundary + "\r\n");
postBody.append("Content-Disposition: form-data; name=\"upload-checksum\" \r\n");
postBody.append(" \r\n");
postBody.append(checksum.toHex() + " \r\n");
postBody.append("\r\n--" + boundary + "--\r\n");

这是标题:

request.setRawHeader("User-Agent", "MyApp 1.0");
request.setRawHeader("Content-Type", "multipart/form-data; boundary="+boundary.toAscii());
request.setHeader(QNetworkRequest::ContentLengthHeader, QString::number(postBody.size()).toAscii());

最佳答案

尝试在设置“Content-Type”后添加“Content-Length” header 。值应该类似于 QString::number(postBody.length())。 (编辑:这没有解决问题)。

删除新行 (\r\n) 之前的额外空间。请将 postBody.append("\r\n") 更改为 postBody.append("\r\n")

关于Qt multipart post问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6423316/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com