轻量Http客户端工具VSCode和IDEA

文章目录

  • 前言
  • Visual Studio Code 的插件 REST Client
    • 编写第一个案例
    • 进阶,设置变量
    • 进阶,设置Token
  • IntelliJ IDEA 的 HTTP请求
    • 构建http脚本
    • HTTP的环境配置
    • 结果值暂存

前言

作为一个WEB工程师,在日常的使用过程中,HTTP请求是必不可少的。我们采用的HTTP工具有如下:

Postman
Insomnia
ApiFox

但是使用以上的工具,需要安装使用,而且有些还需要收费,使用起来相对比较麻烦。如果想要快速的发送HTTP请求,一般人考虑是直接在浏览器或者CMD进行发送,但是局限性很大,往往达不到我们想要的效果

在日常的开发过程中,我们离不开两个工具,微软的Visual Studio Code 和 IntelliJ IDEA两款工具,这两款工具自带HTTP简单发送。下面我为大家介绍这两款工具

Visual Studio Code 的插件 REST Client

这一款是需要安装插件才可以使用的,插件的名称为:REST Client

在这里插入图片描述

按照完这个插件之后,随便新增个文件,命名为 xxxx.http, 后缀必须是 .http
例如:
test.http

每个请求之间,都需要用 ### 来间隔

编写第一个案例

编写一个 GET请求

### GET测试
GET https://example.com/topics/1 HTTP/1.1

编写一个 POST请求 表单

### POST 表单测试
POST http://127.0.0.1:9061/dx-erp/role/save
Content-Type: application/x-www-form-urlencodedname=测试角色
&sn=test

编写一个 POST请求 JSON

### POST JSON测试
POST https://example.com/comments HTTP/1.1
content-type: application/json{"name": "sample","time": "Wed, 21 Oct 2015 18:27:50 GMT"
}

进阶,设置变量

例如配置 contentType 变量

@contentType = application/jsonget http://127.0.0.1:9061/dx-erp/district/allTree
Content-Type:{{contentType}}{
}

说明,contentType 有 application/json / multipart/form-data / application/x-www-form-urlencoded 等类型

进阶,设置Token

@contentType = application/json# @name login
post http://127.0.0.1:9061/login
Content-Type:{{contentType}}{"loginname": "admin","password": "admin"
}@AuthToken = {{login.response.body.data.token}}

以上的请求返回为:

HTTP/1.1 200 
Content-Type: application/json
Transfer-Encoding: chunked
Date: Fri, 22 Dec 2023 14:14:58 GMT
Connection: close{"code": 200,"message": "恭喜你,登录成功!","data": {"token": "eyJ0eXAiOiJKV1xxxx1uOr0Q"}
}

通过以上的请求,可以将token配置为全局变量,使用{{AuthToken}}获取

例如

get http://127.0.0.1:9061/allTree
Content-Type:{{contentType}}
token: {{AuthToken}}{"name":"北京"
}

IntelliJ IDEA 的 HTTP请求

IntelliJ IDEA 不用安装任何插件,只需要 .http 或 .rest 结尾的文件, IDEA会自动识别为HTTP请求脚本

构建http脚本

首先,我们创建一个 rest-http.http 的文件用于进行测试

每个请求之间,都需要用 ### 来间隔

IDEA的使用与上面讲的 VSCode 基本一致,我们直接从更深入的使用进行说明
编写一个 GET请求

###
GET https://example.com/topics/1 HTTP/1.1

编写一个 POST请求 表单

###
POST http://127.0.0.1:9061/role/save
Content-Type: application/x-www-form-urlencodedname=测试角色
&sn=test

编写一个 POST请求 JSON

###
POST https://example.com/comments HTTP/1.1
content-type: application/json{"name": "sample","time": "Wed, 21 Oct 2015 18:27:50 GMT"
}

从以上例子可以看出,IDEA的使用与上面讲的 VSCode 基本一致,但是很多细节还是不相同 。因为IDEA集成的功能更多,使用起来的功能也更多,例如:

HTTP的环境配置

IDEA REST 支持从指定的配置文件中获取环境相关的配置参数,并且可以通过 {{}} 占位符进行获取。
首先在 .HTTP 的文件脚本同目录下创建一个称为 http-client.private.env.json 的文件,然后一级的键值采用不同的环境参数,比如: dev、test、pro等。在请求的http脚本中通过 {{}} 占位符的方式获取到此处配置的参数。

例如:
http-client.private.env.json 文件内容

{"dev":{"baseurl": "http://192.168.2.130:8080","username": "admin","password": "admin"},  "test":{"baseurl": "http://10.26.20.130:8080","username": "admin","password": "Admin123456"}
}

rest-http.http

### 登录
post {{baseurl}}/login
Content-Type:application/json{
"loginname": "{{username}}",
"password": "{{password}}"
}

结果值暂存

rest-http.http

### 登录
post {{baseurl}}/login
Content-Type:application/json{
"loginname": "{{username}}",
"password": "{{password}}"
}### 结果值暂存,记录token
> {% client.global.set("token",login.response.body.data.token);%}### 列表
post {{baseurl}}/login
Content-Type: application/json
token: {{token}}{
"loginname": "{{username}}",
"password": "{{password}}"
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/224009.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SLAM算法与工程实践——SLAM基本库的安装与使用(6):g2o优化库(4)构建g2o的边

SLAM算法与工程实践系列文章 下面是SLAM算法与工程实践系列文章的总链接,本人发表这个系列的文章链接均收录于此 SLAM算法与工程实践系列文章链接 下面是专栏地址: SLAM算法与工程实践系列专栏 文章目录 SLAM算法与工程实践系列文章SLAM算法与工程实践…

在MacOS上Qt配置OpenCV并进行测试

目录 一.Qt环境准备 二.在Qt项目中加载Opencv库并编写代码测试 1.使用Opencv加载图片 (1)在Qt中创建一个新项目 (2)在.pro文件中链接OpenCV库 (3)添加新资源文件 (4)在mainw…

Vue 3 Composition API:让组件开发更高效、灵活(上)

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

图解二叉树的Morris(莫里斯)遍历

二叉树的Morris(莫里斯)遍历 本文参考链接:https://leetcode.cn/problems/binary-tree-preorder-traversal/submissions/490846864/ 文章目录 二叉树的Morris(莫里斯)遍历模板代码前序遍历中序遍历后序遍历 Morris 遍历使用二叉树节点中大量指向 null 的指针&…

编程规范:长函数的思考

在工作,我们应该都不想看到非常的长函数。对于一个运行5年左右的项目,极有可能出现这种情况。由于长函数的长、if/else嵌套,导致代码的可读性非常差,这对于项目的维护和开发带来了极大的困难。所以我们应该避免写长函数&#xff0…

人工智能_机器学习070_SVM支持向量机_软间隔及优化_硬间隔_衡量间隔软度_引入松弛变量_理解隔离参数---人工智能工作笔记0110

我们继续说,之前说的C是什么意思? 我们在这个软间隔优化中就可以引出C 可以看到之前我们讨论的问题,都是基于样本点的,完全的线性可分的问题,我们称为硬间隔 可以看到这种,一分就可以,分开,简单分割就可以分开的数据,我们称之为硬间隔 但是可以看到上面这种情况,无论怎么分,都…

第1课 配置FFmpeg+OpenCV开发环境

本教程所对应的SDK下载链接: https://download.csdn.net/download/XiBuQiuChong/88657539 本课对应源文件下载链接: https://download.csdn.net/download/XiBuQiuChong/88657528 一、配置开发环境 1.下载FFmpegOpenCV开发所用的SDK压缩包&#xff0…

分享70个Java源码总有一个是你想要的

分享70个Java源码总有一个是你想要的 学习知识费力气,收集整理更不易。 知识付费甚欢喜,为咱码农谋福利。 链接:https://pan.baidu.com/s/1s8ZVYHb5B1GgXMlpG-6-Iw?pwd6666 提取码:6666 项目名称 admin、cms、console 等多…

构建创新学习体验:企业培训系统技术深度解析

企业培训系统在现代企业中发挥着越来越重要的作用,它不仅仅是传统培训的延伸,更是技术创新的结晶。本文将深入探讨企业培训系统的关键技术特点,并通过一些简单的代码示例,展示如何在实际项目中应用这些技术。 1. 前端技术&#…

Redis基础-Redis概念及常见命令

1.nosql数据库 NoSQL数据库是一种提供了非关系型数据存储的数据库系统,与传统的关系型数据库(如SQL数据库)不同。NoSQL数据库的特点是灵活性高,能够处理结构化、半结构化或非结构化数据。它们通常用于大数据和实时Web应用。NoSQL数…

C++面试宝典第9题:找出第K大元素

题目 给定一个整数数组a,同时给定它的大小N和要找的K(1 <= K <= N),请根据快速排序的思路,找出数组中第K大的数(保证答案存在)。比如:数组a为[50, 23, 66, 18, 72],数组大小N为5,K为3,则第K大的数为50。 解析 这道题主要考察应聘者对于快速排序的理解,以及实…

Python 数据分析 Matplotlib篇 时间序列数据绘制折线图(第4讲)

Python 数据分析 Matplotlib篇 时间序列数据绘制折线图(第4讲)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹…

SAE 2.0,让容器化应用开发更简单

作者&#xff1a;邵丹 云原生容器化应用托管模式的演变 云原生这个概念从提出&#xff0c;到壮大&#xff0c;再到今天的极大普及&#xff0c;始终处于一个不断演进和革新的过程中。云原生体系下应用的托管形态是随着企业应用架构在不断演进的。最早的应用大多是集中式、单体…

Bellman_Ford算法总结

知识概览 Bellman_Ford算法适合解决存在负权边的最短路问题&#xff0c;时间复杂度为O(nm)。在存在负权边的最短路问题中&#xff0c;Bellman_Ford算法的效率虽然不如SPFA算法&#xff0c;但是Bellman_Ford算法能解决SPFA算法不能解决的经过不超过k条边的最短路问题。 例题展示…

【c++、数据结构课设】哈夫曼树

时间过的真快&#xff0c;转眼之间一个学期即将结束&#xff0c;想必这个时候大家都在准备各科的课设作业&#xff0c;本期内容是我的数据结构课设&#xff0c;希望能给大家带来帮助&#xff0c;如果有任何不足或需要改进的地方&#xff0c;欢迎各位提出宝贵的意见。 屏幕录制2…

bean生命周期源码(三)

书接上文 文章目录 一、Bean的销毁逻辑1. 简介2. Bean销毁逻辑的注册3. Bean的销毁过程 一、Bean的销毁逻辑 1. 简介 前面我们已经分析完了Spring创建Bean的整个过程的源码&#xff0c;在创建bean的核心方法中doCreateBean这一个核心方法中&#xff0c;在方法的最后面有这么…

pycharm修改项目文件夹名称

目录 1 修改项目文件夹名称 2 修改代码中的项目名称 1 修改项目文件夹名称 选中项目文件夹&#xff0c;右键&#xff0c;选择refactor-rename。 选择rename project&#xff1a; 然后输入新的项目名称。 此时进入资源管理器&#xff0c;修改项目文件夹的名字&#xff0c;完成…

spring aop实际开发中怎么用,Spring Boot整合AOP,spring boot加spring mvc一起使用aop,项目中使用aop

前言&#xff1a;本文不介绍 AOP 的基本概念、动态代理方式实现 AOP&#xff0c;以及 Spring 框架去实现 AOP。本文重点介绍 Spring Boot 项目中如何使用 AOP&#xff0c;也就是实际项目开发中如何使用 AOP 去实现相关功能。 如果有需要了解 AOP 的概念、动态代理实现 AOP 的&…

Spark集群部署与架构

在大数据时代&#xff0c;处理海量数据需要分布式计算框架。Apache Spark作为一种强大的大数据处理工具&#xff0c;可以在集群中高效运行&#xff0c;处理数十TB甚至PB级别的数据。本文将介绍如何构建和管理Spark集群&#xff0c;以满足大规模数据处理的需求。 Spark集群架构…

LLM微调(四)| 微调Llama 2实现Text-to-SQL,并使用LlamaIndex在数据库上进行推理

Llama 2是开源LLM发展的一个巨大里程碑。最大模型及其经过微调的变体位居Hugging Face Open LLM排行榜&#xff08;https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard&#xff09;前列。多个基准测试表明&#xff0c;就性能而言&#xff0c;它正在接近GPT-3.5…