Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/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
使用python请求使用数组发布请求_Python_Php_Post_Python Requests - Fatal编程技术网

使用python请求使用数组发布请求

使用python请求使用数组发布请求,python,php,post,python-requests,Python,Php,Post,Python Requests,如何使用python请求创建这样的post请求 $url = 'https://joinposter.com/api/incomingOrders.createIncomingOrder' . '?token=687409:4164553abf6a031302898da7800b59fb'; $incoming_order = [ 'spot_id' => 1, 'phone' => '+380680000000', 'products' =

如何使用python请求创建这样的post请求

$url = 'https://joinposter.com/api/incomingOrders.createIncomingOrder'
 . '?token=687409:4164553abf6a031302898da7800b59fb';

$incoming_order = [
    'spot_id'   => 1,
    'phone'     => '+380680000000',
    'products'  => [
        [
            'product_id' => 169,
            'count'      => 1
        ],
    ],
];

$data = sendRequest($url, 'post', $incoming_order);
我试着这样做:

payload = {'token': 687409:4164553abf6a031302898da7800b59fb,
                          'spot_id': 1, 'phone': '+380680000000', 'products': {'product_id': 169, 'count': 1}}

r = requests.post('https://joinposter.com/api/incomingOrders.createIncomingOrder', params=payload)
但它不起作用。参数“products”未正确创建。以下是创建的URL的外观:
https://joinposter.com/api/incomingOrders.createIncomingOrder?token=704698%3A8544082b36a413a51b5c8c3ce0e2b162&spot_id=1&phone=%2B380680000000&products=product_id&products=count


那么,如何创建包含数组的post请求呢?

尝试将您的令牌和
传入的\u订单
分为两个属性:

import requests

url = "https://joinposter.com/api/incomingOrders.createIncomingOrder"
params = {'token': "xxxxxxxxxxxxxxxxxxxxx"}

incoming_order = {'spot_id': 1, 'phone': '+380680000000', 'products': {'product_id': 169, 'count': 1}}

r = requests.post(url=url, params=params, json=incoming_order)

print(r.status_code)

用有效的令牌替换令牌。

尝试将令牌和
传入订单
分为两个属性:

import requests

url = "https://joinposter.com/api/incomingOrders.createIncomingOrder"
params = {'token': "xxxxxxxxxxxxxxxxxxxxx"}

incoming_order = {'spot_id': 1, 'phone': '+380680000000', 'products': {'product_id': 169, 'count': 1}}

r = requests.post(url=url, params=params, json=incoming_order)

print(r.status_code)

用有效的令牌替换令牌。

HTTP是一种纯文本协议。将非字符串转换为字符串的最常见方法是使用
json.dumps(…)
将字典转换为文本格式。然后由服务器将其转换回。HTTP是一种纯文本协议。将非字符串转换为字符串的最常见方法是使用
json.dumps(…)
将字典转换为文本格式。然后由服务器将其转换回。