您好,登錄后才能下訂單哦!
這篇文章主要介紹python如何實現京東訂單推送到測試環境,提供便利操作示例,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
具體如下:
# -*- coding: utf-8 -*- import hashlib import time import requests from order30 import conf app_key = conf.jd_appkey appSecret = conf.jd_secret token = conf.jd_token def get_md5(string):#返回字符串md5加密后大寫 hl = hashlib.md5() hl.update(string.encode('utf-8')) return hl.hexdigest().upper() def get_timestr():#獲取2分鐘前的時間 time_now = int(time.time())-120 timestr = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time_now)) return timestr def req_get_result(api_url,api_data):#get方法請求函數 req_get = requests.get(api_url,api_data) result = req_get.json() return result def req_post_result(api_url,api_data):#post方法請求函數 req_post = requests.post(api_url,data=api_data) result = req_post.json() return result def param_sort(param_dict):#傳入字典,返回排序后并且連接好的字符串 keys_list = sorted(param_dict.keys()) rb_str = '' for k in keys_list: key_value = k + str(param_dict[k]) rb_str = rb_str + key_value return rb_str def op_jd_order(outer_order_id,optype):#向測試環境推送一個訂單 api_url_dict = { "33060":"http://xx.xxx.xxx.com/jd/xxx1",# 用戶確認收貨完成訂單 "32000":"http://xx.xxx.xxx.com/jd/xxx2", #創建新訂單 "10":"http://xx.xxx.xxx.com/jd/xxx3",#用戶申請售后 } api_url = api_url_dict[optype] timestamp = get_timestr() jd_parms = '{"billId":"%s","statusId":"%s","timestamp":"%s"}'%(outer_order_id,optype,timestamp) api_data = { 'token':token, 'app_key':app_key, 'timestamp':timestamp, 'format':'json', 'v':'1.0', 'jd_param_json':jd_parms } sort_str = param_sort(api_data) #對參數進行排序,連接。 params_str = appSecret + sort_str + appSecret #首尾加上appSecret sign = get_md5(params_str)#獲得簽名后的大寫字符串 api_data['sign'] = sign req = req_post_result(api_url,api_data) return req
以上是“python如何實現京東訂單推送到測試環境,提供便利操作示例”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。