IntelliJ中基于文本的HTTP客户端
时间:2022-07-25
本文章向大家介绍IntelliJ中基于文本的HTTP客户端,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
IntelliJ
提供了一个纯基于文本的HTTP客户端。尽管一开始听起来可能很奇怪,但事实证明这是一个非常有用的功能。
入门
首先,我们需要创建一个名称以.http
或.rest
结尾的文件。例如FunTester.http
。
要发出简单的GET请求,我们必须在新创建的文件中写下该请求。
例如:
GET https://api.muxiaoguo.cn/api/dujitang
IntelliJ
现在在该行旁边添加了一个小的Run-Icon,它可以执行请求。
- 响应结果:
GET https://api.muxiaoguo.cn/api/dujitang
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 22 Sep 2020 08:17:55 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
Vary: Accept-Encoding
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Pragma: no-cache
Strict-Transport-Security: max-age=31536000
{"code":"200","msg":"success","data":{"comment":"你以为有钱人很快乐吗?他们的快乐你根本想象不到!"}}
Response code: 200 (OK); Time: 146ms; Content length: 76 bytes
Cannot preserve cookies, cookie storage file is included in ignored list:
> /Users/fv/Documents/workspace/fun/.idea/httpRequests/http-client.cookies
- 如果要添加
JSON
参数的请求头,只需添加Content-Type
标头和请求正文:
GET https://api.muxiaoguo.cn/api/dujitang
cookie: PHPSESSID=e78ldgop6jub72kp636vqcsj6l
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36
Content-Type: application/json
{
"aa": "FunTester",
"ss": "ok"
}
- 同一文件中的多个请求需要使用**###**分隔。例如:
GET https://api.muxiaoguo.cn/api/dujitang
cookie: PHPSESSID=e78ldgop6jub72kp636vqcsj6l
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36
###
GET https://api.muxiaoguo.cn/api/dujitang
cookie: PHPSESSID=e78ldgop6jub72kp636vqcsj6l
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36
Content-Type: application/json
{
"aa": "FunTester",
"ss": "ok"
}
使用变量
使用{{..}}
语法,我们可以向请求中添加变量。也许我们想针对不同的环境发出相同的请求。为此,我们可以使用host
变量更新请求:
GET http://{{host}}/products
接下来,我们需要定义{{host}}
变量。为此,我们创建一个http-client.env.json
文件并添加以下内容:
{
"development": {
"host": "http://localhost:8080"
},
"production": {
"host": "http://my-cool-api.com"
}
}
这定义了两个环境:dev
和online
。两种环境都使用不同的值定义host
变量。
运行请求时,我们现在可以选择所需的环境:
团队共享
基于文本的简单请求定义使您可以轻松地与团队共享。您甚至可以将请求文件检入版本控制系统。当然,您不希望签入执行请求可能需要的密码或API密钥。IntelliJ
通过单独的私有环境文件(http-client.private.env.json)支持此功能。与前面的环境示例一样,我们可以使用此文件来定义变量。
例如:
{
"dev": {
"api-key": "S3DKLJ56698CR3T"
}
}
为了确保安全性,我们可以从版本控制系统中明确排除此文件。
- 从国家统计局爬下来的地区信息
- app令牌的一个token实现
- velocity分页模板
- js基础-表单验证和提交
- No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
- oracle创建用户
- oracle创建表相关
- spring学习遇到的问题汇总
- Java XML解析工具 dom4j介绍及使用实例
- redis学习教程之一基本命令
- 在java中使用redis
- springmvc学习笔记--json--返回json的日期格式问题
- springmvc学习笔记--mybatis--使用插件自动生成实体和mapper
- velocity的一些用法
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Python Django开发 异常及解决办法(三)
- 有赞零售小票打印跨平台解决方案
- Angular [(ngModel)]的ng-dirty设置时机
- 有赞订单导出的配置化实践
- k2路由器刷系统
- 使用Seq搭建免费的日志服务
- html可伸缩侧边栏
- Dubbo 压测插件的实现——基于 Gatling
- html自定义checkbox样式
- 宝塔面板7.4.2及Windows面板6.8数据库鉴权漏洞 – 官方发布紧急安全更新
- ESP32刷入Ruff Lite固件
- Angularjs1.x ES6接入Chart图表
- 搭建Blynk开源物联网服务端(1)---基本搭建
- 搭建Blynk开源物联网服务端(2)---开始使用
- NPM安装模块报错:Error: sha1-W+8rAcUcgURBLVhzyvg+IvHsa4Q= integrity checksum failed when using sha1: wanted