REST Client实际应用记录
请求Content-Type为application/x-www-form-urlencoded
先来看一个完整示例:
##############
### qa问答
@msg="糖尿病患者应该如何安排饮食?"
POST {{beta}}/chat/qa HTTP/1.1
Authorization:Bearer {{login_app_access_token}}
Content-Type: application/x-www-form-urlencoded
msg={{msg}}
##############
这里,请求的Content-Type设置的是application/x-www-form-urlencoded,这里之前使用json格式,但是一直无法成功,后来修改为application/x-www-form-urlencoded,运行正确。
第一行:post请求的url;第二行是请求的验证信息;第三行请求头信息格式;最后一行请求参数信息
要注意的地方
- 请求文本最后面需要有一个空行,或者一个
#开头的行,建议空行,这样多个请求看起来会非常好看、 - 请求参数和Content-Type之前一定要空一行,不然会出错
- 如果需要把
form类型的参数拆分为多行,那么第二个参数开始必须以&开始 - GET 请求也可以将参数拆分多行,每行开头必须以
?或者&开始
请求Content-Type为application/json
直接上示例:
### sport运动种类识别
POST {{beta}}/np/v1.0/parse-unit HTTP/1.1
Authorization:Bearer {{login_app_access_token}}
Content-Type: application/json
{
"msg":"跑步半个小时",
"types":"sport",
"weight":"60"
}
##############
这里请求的格式是json格式,多个参数之间,分割,如上。
关联
如果每一个请求的接口的头信息中需要登录的token信息,需要怎么实现了,rest也提供了很好的解决办法,可以在结果返回中取得相应结果中的token信息。
先来看一下响应结果是怎么格式的?
{
"access_token": "26c14f94-7d0e-422e-a645-1bcc7ffef0b8",
"token_type": "bearer",
"refresh_token": "354cabc0-a667-44a0-9bc2-cab1f8a58b55",
"expires_in": 3599,
"scope": "READ WRITE"
}
具体代码如下
@login_app_access_token={{login_app.response.body.$.access_token}}
这里的话,我们可以在下一个接口中直接使用这个变量login_app_access_token,如上图中的代码
Authorization:Bearer {{login_app_access_token}}
这里涉及到3个接口,完整代码如下
@Basic=asafadaeadafoeiadalfdajflew0sdafdsafw-0a-sdfas==
@app_phone=15612305820
@app_password=12345678
@grant_type=password
@beta=https://localhost
### app登录,beta
# @name login_app
POST {{beta}}/oauth2/token
Content-Type: application/x-www-form-urlencoded
Authorization:Basic {{Basic}}
username={{app_phone}}
&password={{app_password}}
&grant_type={{grant_type}}
&sms_verify=true
&appName=Task_beta
@login_app_access_token={{login_app.response.body.$.access_token}}
################ 食物识别接口 ###############
### 食物识别
POST {{beta}}/np/api/v1.0/detect HTTP/1.1
Authorization:Bearer {{login_app_access_token}}
Content-Type: application/json
{
"msg":"饺子"
}
##############
### qa问答
@msg="糖尿病患者应该如何安排饮食?"
POST {{beta}}/chat/qa HTTP/1.1
Authorization:Bearer {{login_app_access_token}}
Content-Type: application/x-www-form-urlencoded
msg={{msg}}
##############
### sport运动种类识别
POST {{beta}}/np/v1.0/parse-unit HTTP/1.1
Authorization:Bearer {{login_app_access_token}}
Content-Type: application/json
{
"msg":"跑步半个小时",
"types":"sport",
"weight":"60"
}
##############
到这里,使用rest基本完成了,如果还有其他需要,可以参考VSCode 小鸡汤 第01期 - REST Client 简单好用的接口测试辅助工具
REST Client实际应用记录的更多相关文章
- Dynamics 365 Online通过OAuth 2 Client Credential授权(Server-to-Server Authentication)后调用Web API
微软动态CRM专家罗勇 ,回复332或者20190505可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me! 本文很多内容来自 John Towgood 撰写的Dynamic ...
- IDEA个人常用配置记录
原文 一.常用快捷键 编辑 ⇧ + ↩:开始新的一行 ⌘ + ⇧ + ↩:行内任意位置进行换行,并自动补齐“;”.“{}” ⌘ + ⇧ + U:大小写切换 ⌥ + ⌦:删除到单词的末尾(⌦键为Fn+D ...
- Python Kafka Client 性能测试
一.前言 由于工作原因使用到了 Kafka,而现有的代码并不能满足性能需求,所以需要开发高效读写 Kafka 的工具,本文是一个 Python Kafka Client 的性能测试记录,通过本次测试, ...
- 数据库的SQL语句创建和主外键删除操作
create table UserType ( Id ,), Name nvarchar() not null ) go create table UserInfo ( Id ,), LoginPwd ...
- Open SQL详解
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- PHP 进行统一邮箱登陆的代理实现(swoole)
在工作的过程中,经常会有很多应用有发邮件的需求,这个时候需要在每个应用中配置smtp服务器.一旦公司调整了smtp服务器的配置,比如修改了密码等,这个时候对于维护的人员来说要逐一修改应用中smtp的配 ...
- 服务器编程入门(11)TCP并发回射服务器实现 - 单线程select实现
问题聚焦: 当客户端阻塞于从标准输入接收数据时,将读取不到别的途径发过来的必要信息,如TCP发过来的FIN标志. 因此,进程需要内核一旦发现进程指定的一个或多个IO条件就绪(即输入已准备好被读取,或者 ...
- 关于php的socket
这里仅记录tcp协议: 关于server: <?php /** * 测试关于php的socket函数 */ /** * 最基本的socket,服务器端: * 创建 * $sock = socke ...
- [JCIP笔记](四)踩在巨人的肩上
读完第三章那些繁琐的术语和细节,头疼了整整一个星期.作者简直是苦口婆心,说得我如做梦一般.然而进入第四章,难度骤然降低,仿佛坐杭州的过山公交车突然下坡,鸟鸣花香扑面而来,看到了一片西湖美景. 从开始看 ...
随机推荐
- SQL Server2012创建连接服务器到ORACLE11G
做ETL,肯定少不了经常会从不同的数据库直接进行数据的操作,为了更好的进行跨库操作,SQL SERVER 2012拥有LinkedServer功能.前段时间写了个SQL SERVER同种数据库直接的链 ...
- PAT甲级——A1150 TravellingSalesmanProblem【25】
The "travelling salesman problem" asks the following question: "Given a list of citie ...
- 14.Jmeter聚合报告各项含义
Aggregate Report 是 JMeter 常用的一个 Listener,中文为“聚合报告” Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Na ...
- 实用maven笔记四-打包&其他
通过使用maven的生命周期和丰富多样的插件,可以方便的将项目代码编译打包为自己需要的构件. maven默认项目主代码位置src/main/java目录,测试代码位置src/test/java目录.主 ...
- 3.3-Cypher语言及语法使用
Cypher是一种图数据库查询语言,表现力丰富,查询效率高,其地位和作用与关系型数据库中的SQL语言相当. Cypher具备的能力: Cypher通过模式匹配图数据库中的节点和关系,来提取信息或者修改 ...
- ArcGis 创建含孔洞面要素AO C#
IGeometryCollection geometryCollection = new PolygonClass(); IPointCollection pointCollection_Exteri ...
- cas4.2.7 集群服务搭建
cas服务端集群,网上资料很多,无非就是session共享,ticket共享. 但是session共享是必须的吗?或者能实现集群吗? 实践: 1. ticket共享,直接上代码 package org ...
- 事件循环--eventloop
一.什么是事件循环? 事件循环是 JS 实现异步的具体解决方案,同步代码直接执行,异步函数或代码块先放在异步队列中,待同步函数执行完毕,轮询执行异步队列的函数. 事件循环 二.node.js中的事件循 ...
- Spyder中的一些快捷键
熟练spyder中的一些快捷键后,能极大提升code效率. 这里列出常用的快捷键.(注:在spyder导航栏Tools-Preferences-Keyboard shortcut中有所有的快捷键) T ...
- pair queue____多源图广搜
.简介 class pair ,中文译为对组,可以将两个值视为一个单元.对于map和multimap,就是用pairs来管理value/key的成对元素.任何函数需要回传两个值,也需要pair. 该函 ...