带有非url参数的libCurl GET请求(对象/有效负载)

问题描述 投票:0回答:1

我正在使用远程API,我没有任何文档,我需要发送一个带有JSON有效负载的GET请求,该有效负载不是在原始HTTP请求中发送的,但似乎是在之后发送的。

这是使用原始Python工具使用以下指令完成的:

urllib.request.Request(url=url, method='GET', data=bytes(json.dumps(data), 'utf8'))

我一直在通过Wireshark查看有关它的更多信息,看起来GET请求由HTTP请求和JSON对象组成(两者彼此不同):

Wireshark

我的问题是:如何使用cURL C库实现这一目标?我一直在查看手册,看起来参数不能像POST请求一样传递(CURLOPT_POSTFIELDS)。

c http libcurl
1个回答
1
投票

我终于找到了解决这个问题的方法。

我的cURL请求是使用CURLOPT_HTTPGET选项完成的,该选项无法与CURLOPT_POSTFIELD选项结合使用。为了解决这个问题,我需要用CURLOPT_CUSTOMREQUEST选项替换它,允许我将任何请求类型组合到CURLOPT_POSTFIELD选项。

这篇文章帮助了我:a raw libcurl JSON PUT request using C

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.