前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Requests库(十八)Requests发送application/x-www-form-urlencoded请求

Requests库(十八)Requests发送application/x-www-form-urlencoded请求

作者头像
雷子
修改2021-03-15 17:32:08
3.8K0
修改2021-03-15 17:32:08
举报
文章被收录于专栏:雷子说测试开发

发送application/x-www-form-urlencoded请求

我们在实际测试中也会遇到请求application/x-www-form-urlencoded,那么我们今天来看一个例子。我们在注册博客园的时候呢,会有校验手机号的一个请求,就是一个application/x-www-form-urlencoded请求。

请求分析

我们来看下请求。请求呢,是我们输入手机号后,自动校验的,当我们不知道接口的时候就可以用F12开发者工具进行查看分析。

这是请求头,我们可以看到这样的,我们可以复制出来,做为请求的headers。

看完请求头,我们看下请求参数。

那么我们看看如何去在代码中实现呢

代码展示

代码语言:javascript
复制
import  requests#接口地址url="https://account.cnblogs.com/account/checkphone"#请求头headers={  "content-type": "application/x-www-form-urlencoded; charset=UTF-8","user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36",'origin': 'https://account.cnblogs.com','referer': 'https://account.cnblogs.com/signup/','sec-ch-ua': '"Google Chrome";v="87", " Not;A Brand";v="99", "Chromium";v="87"','sec-ch-ua-mobile': '?0','sec-fetch-dest': 'empty','sec-fetch-mode': 'cors','sec-fetch-site': 'same-origin',"accept-encoding": "gzip, deflate, br",'accept-language': 'zh-CN,zh;q=0.9','content-length': '38','x-requested-with': 'XMLHttpRequest','cookie': '_ga=GA1.2.507216764.1607696139; _gid=GA1.2.20006082.1607696139; __gads=ID=a0af3c482457fbd6:T=1607696140:S=ALNI_Ma4ZyAhdQj07-PWExgzpNmAJtGUoQ; .Cnblogs.Account.Antiforgery=CfDJ8AHUmC2ZwXVKl7whpe9_lasG7wDQV5i5vJUuukLmOI9F0itiUVrA3eVakBuojoT3IvqYSJ0yZWiUXeWpgLju3pbX7Rkf4bmX4mapSrqHPTAi75QT_gJjKjue0UkA0mkIioPJrYxe_IGFlUqHGyImDpU; .Cnblogs.Account.Session=CfDJ8AHUmC2ZwXVKl7whpe9%2FlavSYm3VRXi01KuhSFCTP5LWLHk5AaVajWlHycG8FtVGncRbtu7YIfV6dCPkid1l4r%2B5XuHI7lzVLUOgchpFbS5jbaqnc9P19JyRJAYN0DwJJx3acogHiJjcj9CwnUtYjHYdj2dgINAUjv%2BTTi779%2BVI; XSRF-TOKEN=CfDJ8AHUmC2ZwXVKl7whpe9_lavNd5Ha8h0P_4SPJrUu55X-8C12VbAql-CZ-bU8bgd0OTb5s2YU9SlUBqy4blAUiZggpbMQzpTyX8z_JQmfzKcDoflH9hIJNCNJQ16Po1JTDr8mcFuogzw4mTK2t5udd70; 4271c12252a544478175bac9772afc3d=99db986a-3708-4da5-b4c4-a98db5b8c355; SERVERID=daace45bf36fef87f4742d8b633fdae3|1607739455|1607739403'}#请求参数data={"PhoneNum": "1596463618","CountryCode": "+86"}#打印结果print(requests.post(url,data=data,headers=headers).json())

我们看下最后的结果。

因为我们输入的是错误的手机号码,所以返回的就是一个错误的。

其实接口的请求是很简单的,只要我们去善于分析。

最好我们有现成的本地接口可以验证。

没有接口文档可以抓包,或者通过F12来获取接口的请求和请求参数。


雷子说测试开发

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-12-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 雷子说测试开发 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CLI 工具
云开发 CLI 工具(Cloudbase CLI Devtools,CCLID)是云开发官方指定的 CLI 工具,可以帮助开发者快速构建 Serverless 应用。CLI 工具提供能力包括文件储存的管理、云函数的部署、模板项目的创建、HTTP Service、静态网站托管等,您可以专注于编码,无需在平台中切换各类配置。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档