Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.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
python对curl-d命令的等效请求是什么?_Python_Python 3.x_Curl_Python Requests - Fatal编程技术网

python对curl-d命令的等效请求是什么?

python对curl-d命令的等效请求是什么?,python,python-3.x,curl,python-requests,Python,Python 3.x,Curl,Python Requests,我很难找到与curl命令等效的python请求,curl命令将数据作为JSON发送到主体中 curl命令看起来像 curl -X POST -d '{"key1": "value1", "key2": "value2"}' http://localhost:8080/myapi 通过CURL请求,服务器(python)以如下所示的requset.form获取数据 ImmutableMultiDict([('{&qu

我很难找到与curl命令等效的python请求,curl命令将数据作为JSON发送到主体中

curl命令看起来像

curl -X POST -d '{"key1": "value1", "key2": "value2"}' http://localhost:8080/myapi
通过CURL请求,服务器(python)以如下所示的requset.form获取数据

ImmutableMultiDict([('{"key1": "value1", "key2": "value2"}', '')])
但是当发送相同的post请求时,就像使用python的请求模块一样

response = requests.post("http://localhost:8080/myapi", data=json.dumps({
    "key1": "value1", "key2": "value2"))
从服务器端,我看到的内容如下

ImmutableMultiDict([('key1', 'value1'), ('key2', 'value2')]) and its type is : <class 'werkzeug.datastructures.ImmutableMultiDict

ImmutableMultiDict([('key1','value1'),('key2','value2')]),其类型为:您是否尝试过只发送字典而不是字符串化json

r=requests.post('https://httpbin.org/post,数据={key1:“value1”,“key2:“value2”})


通过httpbin测试服务器运行该语句和运行curl语句会产生相同的响应(用户代理除外。

您的代码在语法上无效,而且这两个输出似乎相同,因此我不确定您在问什么。您好@jonrsharpe,很抱歉这是一个复制粘贴错误,更新了正确的一个,谢谢在curl中设置正确的
内容类型
标题时会发生什么情况?@jonrsharpe,当我设置-H时“Content Type:application/json”我没有收到服务器端的任何数据data:ImmutableMultiDict([]),类型为: