C++ 设置——在c+中使用libcurl的数据二进制文件+;

C++ 设置——在c+中使用libcurl的数据二进制文件+;,c++,json,libcurl,C++,Json,Libcurl,我正在使用http://curl.haxx.se/在C++应用程序中使用。我试着写一个相当于: curl -v -X POST -H "Content-type: application/json; charset=utf-16" --data-binary @some data.json 我正在使用curl\u easy\u setopt()设置各种选项,但我搞不清楚的是--data binary标志。我将使用哪个CURLOPT设置来设置此设置 提前感谢您应该使用: 指定要POST到服务器的

我正在使用
http://curl.haxx.se/在C++应用程序中使用<代码>。我试着写一个相当于:

curl -v -X POST -H "Content-type: application/json; charset=utf-16" --data-binary @some data.json
我正在使用
curl\u easy\u setopt()
设置各种选项,但我搞不清楚的是
--data binary
标志。我将使用哪个
CURLOPT
设置来设置此设置

提前感谢

您应该使用:

指定要
POST
到服务器的数据[…]将
char*
作为参数传递,指向要在
httppost
操作中发送的完整数据。您必须确保数据的格式符合您希望服务器接收数据的方式

注意:您可以使用
--libcurl
选项轻松发现这一点:

--libcurl FILE  Dump libcurl equivalent code of this command line

谢谢你的回答。我使用的是
CURLOPT\u POSTFIELDS
,但我要传递的缓冲区是
wchar\u t*
而不是
char*
。这会有什么不同吗?我特别感兴趣的是明确说明数据是二进制的,就像我最初的问题中命令行中的
-binary
。libcurl需要一个字节数组,因此您需要将宽字符序列转换为多字节字符串,例如,使用并使用该选项,以便明确传递多字节的长度字符串(由
wcstombs
返回)。