11.Requests【接口请求】requests模拟headers传参

一、前言

我们在讲http协议的时候,已经了解到接口的请求存在请求体,也叫header。其实在模拟接口请求时,如果后台没有对header中的参数做校验,则可以不用传header信息,比如我们上面讲到的所以接口没有传header也是可以请求成功的。为了保险起见,一般情况下我们只需要发送几个重点的参数即可。

二、学习目标

1.headers传参

三、知识点

1.【headers传参】

User-Agent,浏览器的用户代理字符串。告诉HTTP服务器, 客户端使用的操作系统和浏览器的名称和版本。

Content-Type,来表示具体请求中的媒体类型信息,确切的来说是客户端告知服务端,自己即将发送的请求消息携带的数据结构类型,好让服务端接收后以合适的方式处理。

import requests

header = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36",
    "Content-Type": "application/x-www-form-urlencoded"
}

query_string = {
    "name":"xiaoming",
    "age":"18"
}

data = {
    "say":"hello python!"
}
url_mul = 'http://httpbin.org/post'
r = requests.post(url_mul,params=query_string, data=data,headers=header) #可以用headers参数传值,header必须是字典格式
print(r.text)

同理,get请求也是这种传参方式:

import requests

header = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36",
    "Content-Type": "application/x-www-form-urlencoded"
}

query_string = {
    "name":"xiaoming",
    "age":"18"
}

url_mul = 'http://httpbin.org/get'
r = requests.get(url_mul,params=query_string,headers=header) #可以用headers参数传值,header必须是字典格式
print(r.text)
posted @ 2023-01-17 10:13  测开星辰  阅读(1065)  评论(0编辑  收藏  举报