api接口对接实例

目录

JD平台API接口

api接口对接

json模块

md5加密:

双重加密:

加盐:

测试实列:

JD平台API接口

京东API(Application Programming Interface)是京东提供的一组符合RESTful规范的接口,可以用来获取京东商品、订单等信息,同时也支持商家实现商品上架、订单处理等操作。这些API可以通过HTTP请求进行访问,并返回JSON格式的数据。开发者可以通过京东API实现自己的应用,如代理商品销售、数据分析等。京东API提供了多种认证方式和API文档,开发者可以根据实际需求来选择。

json模块

 Json   模块提供了四个方法: dumps、dump、loads、load

pickle 模块也提供了四个功能:dumps、dump、loads、load

 dumps和dump   序列化方法
       dumps只完成了序列化为str,
       dump必须传文件描述符,将序列化的str保存到文件中

总结:

1. json序列化方法:

          dumps:无文件操作            dump:序列化+写入文件

  2. json反序列化方法:

          loads:无文件操作              load: 读文件+反序列化

  3. json模块序列化的数据 更通用

      picle模块序列化的数据 仅python可用,但功能强大,可以序列号函数

  4. json模块可以序列化和反序列化的  数据类型 见  python对象(obj) 与json对象的对应关系表

  5. 格式化写入文件利用  indent = 4 

md5加密:

import hashlib

# 待加密信息
str = '123456'
# 创建md5对象
hl = hashlib.md5()
hl.update(str.encode("utf-8"))
print('MD5加密前为 :' + str)
print('MD5加密后为 :' + hl.hexdigest())

双重加密:

md5_obj=hashlib.md5("123456".encode("utf-8"))
str1=md5_obj.hexdigest() #加密1次
obj2=hashlib.md5(str1.encode("utf-8"))
str2=obj2.hexdigest()#加密2次
print(str2) #双重加密后,同样解密开

加盐:

from random import Random  
import hashlib
  
# 获取由4位随机大小写字母、数字组成的salt值  
def create_salt(length = 4):  
    salt = ''  
    chars = 'AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789'  
    len_chars = len(chars) - 1  
    random = Random()  
    for i in range(length):  
        # 每次从chars中随机取一位  
        salt += chars[random.randint(0, len_chars)]  
    return salt  
  
# 获取原始密码+salt的md5值  
def create_md5(pwd,salt):  
    md5_obj = hashlib.md5()  
    md5_obj.update((pwd + salt).encode("utf-8"))  
    return md5_obj.hexdigest()  
  
# 原始密码  
pwd = 
# 随机生成4位salt  
salt = create_salt()  
# 加密后的密码  
md5 = create_md5(pwd, salt)  
  
print('[pwd]\n',pwd ) 
print('[salt]\n', salt)  
print('[md5]\n', md5) 

post 请求:
    url = 'http://m.ctrip.com'
    payload = {'some': 'data'}
    r = requests.post(url, data=json.dumps(payload))
    
    headers = {'content-type': 'application/json'}
    url = 'http://47.95.71.224/v1/clue/saler'
    r = requests.post(url,data=post_data,headers=headers)

测试实列:

import hashlib
import requests
import json
import time
time = time.time()
time = str(time).split('.')[0]
token =
data = {
    'name': '先生',
    'mobile': '18079575676',
    'city': '南昌',
    'brand': '未知',
    'series': '未知',
    'model': '未知',
    'kilometer':'10',
    'licensed_date_year':'2010 3',
    'is_operation':'',
    'is_accidented':''
}
data = json.dumps(data)
print(data)

sign = hashlib.md5((data + token + time).encode("utf-8")).hexdigest()
post_data = {
    'token': token,
    'sign': sign,
    'time': time,
    'data': data,
}
url = 'http://47.95.71.224/v1/clue/saler'
r = requests.post(url, data=post_data)
print(r.text)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值