python 实现调用远程接口

python 实现调用远程接口
huaweichenai 2020-07-02 14:51:45 357 收藏 3
分类专栏: Python
版权

在python中我们可以使用requests模块来实现调用远程接口

一:安装requests模块

pip install requests

二:使用requests模块实现get方式调用远程接口

使用get方式调用远程接口主要使用了requests模块的get方法

requests.get()

get方法常见的参数有url,params和headers

url:表示远程接口的地址

params表示get参数

headers表示get传参的headers参数信息

使用requests模块实现get方式调用远程接口的简单实现如下

# -*- coding: utf-8 -*-
import requests
import ast
#接口地址
url = 'XXX'
#get传参
data = {'type':'0'}
#headers信息
headers = {
    'Content-Type': 'application/x-www-form-urlencoded',
    'Authorization': 'Bearer XXX'
}
#
r = requests.get(url, params=data, headers = headers)
# 接口返回的状态码
print(r.status_code)
# 接口返回的字符串内容
content = r.text
# #将字符串转字典型
content_list = ast.literal_eval(content)
print(content_list)
# 接口返回的json格式内容
print(r.json())

根据如上就可以实现使用get方式调用远程接口

三:使用requests模块实现post方式调用远程接口

使用post方式调用远程接口主要使用了requests模块的post方法

requests.post()

post方法常见的参数有url,data和headers

url:表示远程接口的地址

data:表示post参数

headers:表示post传参的headers参数信息

使用requests模块实现post方式调用远程接口的简单实现如下

# -*- coding: utf-8 -*-
import requests
import ast
#接口地址
url = 'XXX'
#header信息
headers = {
    'Content-Type': 'application/x-www-form-urlencoded',
    'Authorization': 'Bearer XXX'
}
#post传参
data = {
    'nickname': '111',
    'gender': 1,
    'city': 'ce',
    'avatar': '111'
}
r = requests.post(url, data=data,headers=headers)
# 接口返回的状态码
print(r.status_code)
# 接口返回的字符串内容
content = r.text
# #将字符串转字典型
content_list = ast.literal_eval(content)
print(content_list)
# 接口返回的json格式内容
print(r.json())

根据如上就可以实现使用post方式调用远程接口

当远程接口调用通信不良的时候,可以设置重试次数

import requests
from retrying import retry
# 设置重试次数和时间间隔
@retry(stop_max_attempt_number=3, wait_fixed=1000)
def post_data(strXml):
    headers = {
        # 'Content-Type': 'application/json'
        'Content-Type': 'text/xml'
        # 'Content-Type': 'x-www-form-urlencoded;charset=UTF-8'
    }
    data = {}
    data['message'] = strXml
    data = strXml.encode('utf-8')
    response = requests.post(url=pacs_url, data=data, headers=headers)
    return response

# 调用函数
# response = get_data()
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容