postman使用教程9-点 code 按钮生成代码段

前言

postman 可以生成各种语言的代码发送接口请求,对于会使用 postman 但python脚本还不熟练的小伙伴会很有帮助。
经常有小伙伴说:为什么我 postman 可以请求成功,用 python 无法请求成功?

code

postman 上接口调试没问题后,可以点右侧 code 按钮

可以生成 HTTP 协议的请求报文, 这对排查问题非常方便

POST /api/v1/register HTTP/1.1
Host: localhost:8000
Content-Type: application/json
User-Agent: PostmanRuntime/7.13.0
Accept: */*
Cache-Control: no-cache
Postman-Token: 8586703c-68a8-445b-b532-4a1b9db14eb9,ebaee06d-9612-492a-98d5-c0333bb7ca9e
Host: 49.235.92.12:7005
accept-encoding: gzip, deflate
content-length: 68
Connection: keep-alive
cache-control: no-cache

{
"username": "test_1620546381",
"password": "123456"
}

生成 python 代码段

可以选择不同的开发语言

选python requests请求

点 Copy to Clipboard 按钮会全部复制出来

import requests

url = "http://localhost:8000/api/v1/register"

payload = "{\n \"username\": \"test_1620546518\",\n \"password\": \"123456\"\n}"
headers = {
'Content-Type': "application/json",
'User-Agent': "PostmanRuntime/7.13.0",
'Accept': "*/*",
'Cache-Control': "no-cache",
'Postman-Token': "8586703c-68a8-445b-b532-4a1b9db14eb9,155883b8-aea7-4b42-82db-d9e18b28cbce",
'Host': "49.235.92.12:7005",
'accept-encoding': "gzip, deflate",
'content-length': "68",
'Connection': "keep-alive",
'cache-control': "no-cache"
}

response = requests.request("POST", url, data=payload, headers=headers)

print(response.text)

curl 请求

也可以生成 curl 请求

curl -X POST \
http://localhost:8000/api/v1/register \
-H 'Accept: */*' \
-H 'Cache-Control: no-cache' \
-H 'Connection: keep-alive' \
-H 'Content-Type: application/json' \
-H 'Host: 49.235.92.12:7005' \
-H 'Postman-Token: 8586703c-68a8-445b-b532-4a1b9db14eb9,c96e777c-37f6-4e71-99c0-8dfa78ba516a' \
-H 'User-Agent: PostmanRuntime/7.13.0' \
-H 'accept-encoding: gzip, deflate' \
-H 'cache-control: no-cache' \
-H 'content-length: 68' \
-d '{
"username": "test_1620546615",
"password": "123456"
}'

postman 支持的语言和框架

Language Framework
C LibCurl
C# RestSharp
cURL cURL
Dart Dart
Go http package
HTTP (Raw HTTP request)
Java OkHttp
Java Unirest
JavaScript Fetch
JavaScript jQuery
JavaScript XHR
NodeJS Axios
NodeJS Native
NodeJS Request
NodeJS Unirest
Objective-C NSURLSession
OCaml Cohttp
PHP cURL
PHP Http_Request2
PHP pecl_http
PowerShell RestMethod
Python http.client (Python 3)
Python Requests
Ruby NET::Http
Shell Httpie
Shell wget
Swift URLSession

2021年第七期《python接口自动化+测试开发》课程,4月18号开学(火热报名中!)

本期上课时间:4月18号-7月11号,每周六、周日晚上20:30-22:30

(0)

相关推荐

  • Python 抓取网页乱码原因分析

    在用 python2 抓取网页的时候,经常会遇到抓下来的内容显示出来是乱码. 发生这种情况的最大可能性就是编码问题:运行环境的字符编码和网页的字符编码不一致. 比如,在 windows 的控制台(gb ...

  • 如何使用Selenium WebDriver查找错误的链接?

    今日互动话题 今年的圣诞节你想怎么过?                     当您在网站上遇到404 /页面未找到/无效超链接时,会想到什么想法?啊!当您遇到损坏的超链接时,您会感到烦恼,这是为什么 ...

  • 傻瓜式文章爬虫-newspaper库简介

    今天比较闲,我就浏览了会github上有关python爬虫的项目.看到一个newspaper库,关注数挺高的.作者受lxml的强大和requests的简洁,开发了newspaper库. request ...

  • 【我问Crossin】Python 能被运用在哪些领域?

    【我问Crossin】Python 能被运用在哪些领域?

  • postman使用教程1-安装与使用

    前言 postman用于测试http协议接口,无论是开发, 还是测试人员, 都有必要学习使用postman来测试接口, 用起来非常方便. 环境安装 postman 可以直接在chrome 上安装插件, ...

  • postman使用教程3-全局变量和环境变量

    前言 当接口请求中有多个地方用到同一个值时,可以设置变量,在脚本中引用变量. postman 可以设置全局变量和环境变量,这样只需要改一个地方,其它脚本引用变量都会生效. 使用变量 在多个地方使用相同 ...

  • postman使用教程2-发 post 请求(json和urlencoded)

    前言 使用 postman 发送 http 协议 post 请求,两种请求参数类型application/json 和 application/x-www-from-urlencoded. appli ...

  • postman使用教程5-Test脚本中自定义变量(参数关联)

    前言 上个接口返回token,下个接口需在请求头部传token,这就是我们经常说的参数关联. postman 如何实现参数关联呢?可以在Tests 脚本中自定义变量. 查询个人信息接口 需用户先登录, ...

  • postman使用教程4-集合变量(collection variables)的使用

    前言 postman定义环境变量和全局变量用的比较多,当使用多个集合(collection) 的时候,每个集合也可以分别定义不同的集合变量. 一个集合可以看成一个小的项目,不同集合定义不同变量是很有必 ...

  • postman使用教程7-参数化引用外部文件(txt/csv/json)测试数据

    前言 当同一个接口需要测试不同的参数时,需用到参数化的概念.postman支持从外部文件读取测试数据参数化 设置参数化变量 新建一个collections 专门测试登录接口 设置集合变量usernam ...

  • postman使用教程6-引用随机变量($guid,$timestamp,$randomInt)

    前言 在接口测试中,有些接口的请求参数具有唯一性,比如注册接口,注册一个账号后就不能重复注册了. 为了能重复执行这个接口,可以在请求前清理测试数据,也可以把请求的参数设置成一个可变的值(每次不一样), ...

  • postman使用教程8-设置断言(Tests脚本编写)

    前言 当一个接口发送请求有返回结果后,如何知道返回的结果符合预期?可以在 postman 里面的 Tests 写脚本断言符合结果符合预期. Tests 是接口返回 response 之后的脚本操作,可 ...

  • postman使用教程13-cookies 管理器

    前言 提供了一个 MANAGE COOKIES 模式,使您可以编辑与每个域关联的cookie. 模拟web网站登录的时候,一般都会有cookies Cookies 关联 以登录禅道网站为例,没访问之前 ...