python程序如何实现接口封装、请求、调用?

python

百分之99的项目,都需要分解成各个层面,交于不同的程序员设计,当所有程序设计完成吗,要组合在一起时候,要如何操作呢?请看下文哦~

简介:

关于接口请求和封装,最常用的是GET和POST两种方法。

接口文档需要包含信息:接口名称、接口功能、接口地址、支持格式、请求方式、请求示例、请求参数、返回参数说明。

以典型的(一两个)参数做为判断是否请求通过。

GET请求

import requests

import json

 

url = "http://v.juhe.cn/laohuangli/d"

para = {"key":"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","date":"2017-3-22"}

header ={}

 

r = requests.get(url,params=para,headers= header,)

#verify=True适用于服务端的ssl证书验证,verify=False为关闭ssl验证

print('get请求获取的响应结果json类型',r.text)

print("get请求获取响应状态码",r.status_code)

print("get请求获取响应头",r.headers['Content-Type'])

#响应的json数据转换为可被python识别的数据类型

json_r = r.json()

print(json_r)

POST请求

post请求有两种常用的请求格式:

1、key-value的格式'Content-Type':'application/x-www-form-urlencoded'

2、标准json的格式:'Content-Type':'application/json'

#key-value

import requests

import json

 

url = "http://v.juhe.cn/laohuangli/d"

para = {"key":"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","date":"2017-3-22"}

header ={}

 

r = requests.post(url,data=para,headers= header)

 

print('get请求获取的响应结果json类型',r.text)

print("get请求获取响应状态码",r.status_code)

print("get请求获取响应头",r.headers['Content-Type'])

 

#响应的json数据转换为可被python识别的数据类型

json_r = r.json()

print(json_r)

#json

import requests

import json

 

url = "http://v.juhe.cn/laohuangli/d"

para = {"key":"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","date":"2017-3-22"}

header ={}

#python数据类型转换为json类型(json.dumps())

para = json.dumps(para)

r = requests.post(url,data=para,headers= header)

 

print('get请求获取的响应结果json类型',r.text)

print("get请求获取响应状态码",r.status_code)

print("get请求获取响应头",r.headers['Content-Type'])

 

#响应的json数据转换为可被python识别的数据类型

json_r = r.json()

print(json_r)

把所有的请求封装在函数中

def get(url,para,headers):

    try:

        r = requests.get(url,params=para,headers=headers)

        print("获取返回的状态码",r.status_code)

        json_r = r.json()

        print("json类型转化成python数据类型",json_r)

    except BaseException as e:

        print("请求失败!",str(e))

def post(url,para,headers):

    try:

        r = requests.post(url,data=para,headers=headers)

        print("获取返回的状态码",r.status_code)

        json_r = r.json()

        print("json类型转化成python数据类型",json_r)

    except BaseException as e:

        print("请求失败!",str(e))

def post_json(url,para,headers):

    try:

        data = para

        data = json.dumps(data)   #python数据类型转化为json数据类型

        r = requests.post(url,data=data,headers=headers)

        print("获取返回的状态码",r.status_code)

        json_r = r.json()

        print("json转换为python数据类型:",json_r)

    except BaseException as e:

        print("请求失败!",str(e))

 

url = "http://v.juhe.cn/laohuangli/d"

para = {"key":"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","date":"2017-3-22"}

headers ={}

 

get(url,para,headers)

post(url,para,headers)

post_json(url,para,headers)

好了,以上内容小伙伴们可以消化学习下啦~如果大家还想了解更多python实用知识,点击进入云海天Python教程网

以上是 python程序如何实现接口封装、请求、调用? 的全部内容, 来源链接: utcz.com/z/529190.html

回到顶部