簡體   English   中英

使用 python 請求發布帶有數組的請求

[英]Post request with arrays using python requests

如何使用 python 請求創建這樣的發布請求?

$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)

但它沒有用。 參數“產品”創建不正確。 這是創建的 URL 的樣子: https://joinposter.com/api/incomingOrders.createIncomingOrder?token=704698%3A8544082b36a413a51b5c8c3ce0e2b162&spot_id=1&phone=%2B380680000000&products=product_id&products=count : https://joinposter.com/api/incomingOrders.createIncomingOrder?token=704698%3A8544082b36a413a51b5c8c3ce0e2b162&spot_id=1&phone=%2B380680000000&products=product_id&products=count

那么如何創建一個包含數組數組的 post 請求呢?

嘗試將您的令牌和incoming_order分成兩個屬性:

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)

用有效的令牌替換令牌。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM