如果我这样做
服务器不会看到多部分内容,但如果我注释掉第二行代码,它就能看到了。
curl_easy_setopt(curl, CURLOPT_HTTPPOST, formpost);
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, post_params);
服务器不会看到多部分内容,但如果我注释掉第二行代码,它就能看到了。
curl_easy_setopt(curl, CURLOPT_HTTPPOST, formpost);
//curl_easy_setopt(curl, CURLOPT_POSTFIELDS, post_params);
可以了。
这里有什么问题?
更新:现在的问题是,是否可以给参数赋值,以便该值在服务器端的POST参数数组中?我正在尝试。
headers = curl_slist_append(headers, "Content-Disposition: form-data");
//action=upload
curl_formadd(&formpost,
&lastptr,
CURLFORM_COPYNAME, "action",
CURLFORM_COPYCONTENTS, "upload",
CURLFORM_CONTENTHEADER, headers,
CURLFORM_CONTENTTYPE, "Content-Type: multipart/form-data",
CURLFORM_END);
但这并不起作用!
提前感谢您!
post_params="action=upload&clientID=" + clientId
- Eugeny89application/x-www-form-urlencoded
。你的字符串必须是一个有效的多部分消息,并且你必须设置正确的Content-Type:
头(可能是multipart/form-data
)... 我建议你阅读这篇文章了解多部分消息的工作原理。 - DaveRandompost_params
。该字符串看起来完全不同。在阅读我之前提供的维基百科文章之前,请参考其中一个多部分消息的示例,并链接到您需要阅读有关标准如何工作的所有内容。 - DaveRandom