Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在libcurl中通过POST上传文件?_C++_Http_Libcurl - Fatal编程技术网

C++ 如何在libcurl中通过POST上传文件?

C++ 如何在libcurl中通过POST上传文件?,c++,http,libcurl,C++,Http,Libcurl,如何在libcurl中通过POST上传文件?(c++)来自文档: 当使用libcurl的“easy”接口时,您可以初始化会话并获得一个句柄(通常称为“easy句柄”),您可以将其用作所使用的easy接口函数的输入。使用curl\u easy\u init获取句柄 您可以在即将到来的传输中设置所有您想要的选项,其中最重要的是URL本身(您可能已经知道,没有指定的URL,您无法传输任何内容)。您可能还需要设置一些回调,当数据可用时将从库中调用这些回调。所有这些都使用curl\u easy\u set

如何在libcurl中通过POST上传文件?(c++)

来自文档:

当使用libcurl的“easy”接口时,您可以初始化会话并获得一个句柄(通常称为“easy句柄”),您可以将其用作所使用的easy接口函数的输入。使用
curl\u easy\u init
获取句柄

您可以在即将到来的传输中设置所有您想要的选项,其中最重要的是URL本身(您可能已经知道,没有指定的URL,您无法传输任何内容)。您可能还需要设置一些回调,当数据可用时将从库中调用这些回调。所有这些都使用
curl\u easy\u setopt

设置完毕后,告诉libcurl使用
curl\u easy\u perform
执行传输。然后,它将执行整个操作,并且在完成之前不会返回(无论是否成功)

传输完成后,您可以设置新选项并进行另一次传输,或者如果传输完成,可以通过调用
curl\u easy\u cleanup
来清理会话。如果您想要持久连接,您不需要立即清理,而是使用相同的easy handle继续运行并执行其他传输

因此,您似乎需要调用以下命令:

  • curl\u easy\u init
    (初始化curl会话)
  • curl\u easy\u setopt
    (设置会话选项)
  • curl\u easy\u perform
    (执行curl)
  • curl\u easy\u cleanup
    (删除会话)

  • 如果这些是C API,在C++源文件中调用它们应该没问题。

    < P>你指的是RFC 1867(即当用户提交一个包含一个输入类型为“文件”的字段的HTML表单)时浏览器发送什么? 如果是这样的话,你可能会对