在Json有效载荷中传递变量?

时间:2017-06-02 12:48:29

标签: python json post

我有以下代码:

import requests
import time

orderID = time.strftime("%#d%m%y") + str(randint(10, 99))
payload = '{ "id": 62345, "shippingCharge": 0.0, "giftCharge": 0.0, "amountDue": 13000.0}'
url = "test.com/v1/%s".format(orderID)
s = requests.Session()
s.headers.update({'Content-Type': 'application/json'})
r = s.post(url , payload, auth=('test01', 'test01'))

我想在下面传递变量orderID

  1. 作为JSON有效内容中id字段的值。
  2. 在网址字符串
  3. v1之后

    请帮帮我。

2 个答案:

答案 0 :(得分:0)

1)作为JSON有效负载中id字段的值。

 orderID = time.strftime("%#d%m%y") + str(randint(10, 99)) 
 payload = '{ "id": '+ str(orderID) +', "shippingCharge": 0.0, "giftCharge": 0.0, 
"amountDue": 13000.0}' 

2)在URL字符串中的v1之后

您提供的代码对您的用例是正确的。

答案 1 :(得分:0)

我认为这会奏效:

import requests
from random import randint
import time

orderID = time.strftime("%#d%m%y") + str(randint(10, 99))
payload = ('{ "id": ' + str(orderID) + ', "shippingCharge": 0.0, "giftCharge": 0.0, '
           '"amountDue": 13000.0}')
url = "test.com/v1/{}".format(orderID)
s = requests.Session()
s.headers.update({'Content-Type': 'application/json'})
r = s.post(url , payload, auth=('test01', 'test01'))