PostIn V1.0.8版本发布,IDEA 插件支持一键扫描上报,让接口定义不再繁琐

PostIn是一款国产开源免费的接口管理工具,包含项目管理、接口调试、接口文档设计、接口数据MOCK等模块,支持常见的HTTP协议、websocket协议等,支持免登陆本地接口调试,同时可以对项目进行灵活的成员权限、消息通知管理等。本周PostIn V1.0.8版本发布,支持IDEA插件一键扫描并上报到PostIn系统。

1、版本更新日志

  • 新增

➢ IDEA插件

针对 IntelliJ IDEA 环境推出 PostIn 插件,版本号1.0.1, PostIn 插件是一个针对 IntelliJ IDEA 环境的工具,集成到 IDEA 侧面板中,便于快速访问,帮助开发人员高效地管理API定义。插件可自动生成 API 文档并一键同步到 PostIn 的项目中。

  • 修复

➢ 优化 IntelliJ IDEA 环境 PostIn 插件功能显示。

2、IDEA插件安装、使用

2.1 插件功能

  • 一键智能解析:在IDEA中扫描JAVA代码,通过添加的注释自动识别接口路径、参数、返回值,无需手动整理!

  • 全格式文档生成:秒级导出API标准文档,无缝对接PostIn平台!

  • 动态同步更新:代码改动后,文档实时同步更新,杜绝“代码更新、文档滞后”产生的一系列问题!

  • 自定义模板:支持团队统一配置文档样式、字段注释规范,让协作更专业!

2.2 插件优势

  • 省时省力:3秒生成100个接口文档,避免手工复制粘贴占用开发时间!

  • 简单易用:无需配置复杂环境,安装即用,操作简单!

  • 零误差:代码即文档,逻辑与描述100%一致,避免人为错误!

  • 高效协作:代码与文档实时同步,解决了文档滞后代码、沟通成本高等一系列问题

2.3 插件下载及安装

本节将详细介绍 PostIn 插件下载、安装。

方式1:在 IntelliJ IDEA 中安装 PostIn 插件。打开 IDEA 设置,进入 Plugins(插件)页面,搜索 “PostIn” 并安装 “PostIn” 插件。

方式2:在 Jetbrains Marketplace 中下载后通过本地安装PostIn,打开 IDEA 设置,进入 Plugins(插件)页面,点击۞,选择"install plugin from disk... ",从磁盘安装插件。

插件仅支持 IntelliJ IDEA 2024.1.7 版本。

安装结束后,在idea右侧侧边栏显示PostIn。

2.4 插件配置

本节将详细介绍 PostIn 插件配置。

进入插件后,显示扫描接口, 上报接口,设置三个按钮。

配置PostIn插件,点击“设置”按钮,进入PostIn插件的配置。

需要配置PostIn服务的URL(注意配置的URL尾部不需要带"/"),以及上报接口的所属空间ID,上报接口的所属空间ID可以在PostIn空间详情。

至此,PostIn上报接口的IDEA插件已全部下载、安装、配置结束。

2.5 插件使用指南

本节将详细介绍怎么使用PostIn插件上报接口,生成详细的接口文档。

2.5.1 添加代码注释

首先需要在接口文件controller 中添加注释,包含接口协议、导入接口文件夹名称、接口地址。

/**
 * @pi.protocol: http
 * @pi.groupName: 空间关注
 * @pi.path:/workspaceFollow
 */

  • @pi.protocol:定义了接口的协议。

  • @pi.groupName:定义了接口的文件夹名称。

  • @pi.path:定义了该接口的基本 URL 路径。

其次,需要在接口前添加接口详细信息的注释,包含接口名称、接口详细URL、请求方式、请求类型、请求参数。通过请求类型的不同,可以分为两种。

第一种:模型

/**
 * @pi.name:创建空间关注123
 * @pi.url:/createWorkspaceFollow
 * @pi.methodType:post
 * @pi.request-type:json
 * @pi.param: model=io.tiklab.postin.workspace.model.WorkspaceFollow
 */

  • @pi.name:定义了接口的名称。

  • @pi.url:和@pi.path共同组成了接口的完整路径,举例接口的完整路径:/workspaceFollow/createWorkspaceFollow

  • @pi.methodType:定义了接口请求方式。

  • @pi.request-type:定义了接口请求类型。

  • @pi.param:请求参数内容。

第二种:字段

/**
 * @pi.name:删除空间关注123
 * @pi.url:/deleteWorkspaceFollow
 * @pi.methodType:post
 * @pi.request-type:formdata
 * @pi.param: name=id;dataType=string;value=workspaceId;desc=当前删除的id
 * @pi.param: name=id2;dataType=string;value=workspaceId2;desc=当前删除的id2
 */

  • @pi.name:定义了接口的名称。

  • @pi.url:和@pi.path共同组成了接口的完整路径,举例接口的完整路径:/workspaceFollow/deleteWorkspaceFollow

  • @pi.methodType:定义了接口请求方式。

  • @pi.request-type:定义了接口请求类型。

  • @pi.param:请求参数内容。

2.5.2 扫描并上传API接口

注释添加完成后,在PostIn插件点击“扫描接口”按钮,扫描当前项目所有接口。

扫描出接口后,用户可单选、多选或全选接口后提交上报。例如,接口总共有7个,按Ctrl选择其中3个,点击“上传接口”按钮,系统弹出”确认上传接口“二次确认弹窗。

点击“是”,选择的接口上传到PostIn系统。

2.5.3 更新API文档

当接口进行更新之后,还可以利用PostIn插件对接口进行更新。

接口成功上传PostIn后,对接口信息进行修改,只要接口路径(即@pi.path和@pi.url组成的路径)未进行修改,再次上传接口,会对当前接口进行更新。

接口路径(即@pi.path和@pi.url组成的路径)修改之后,再次上传接口,接口会按照新接口进行添加。

上报成功之后,可以在PostIn和 IntelliJ IDEA 环境信息对比。

下图为请求为字段,上报PostIn前后信息对比。

2.6 常见问题

  • 配置完成后,上报接口提示404

请检查配置的PostIn服务器URL是否正确,注意地址尾部不需要带"/"

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

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

相关文章

UE5学习笔记 FPS游戏制作36 UI动画

文章目录 目的效果创建动画UI准备制作动画 播放动画目的效果创建动画UI准备制作动画 播放动画注册播放事件 目的效果 我们要创建一个提示动画,文字先渐显,然后向上移动,同时渐隐 创建动画 UI准备 创建一个UI控件,然后创建一个…

HTTP 响应头 Strict-Transport-Security 缺失漏洞

HTTP 响应头 Strict-Transport-Security 缺失漏洞 这个漏洞就是说明网站的HTTP响应头中没有设置Strict-Transport-Security,没有设置则可以通过将https自己手动改成htttp的方式进行访问。不安全 解决方法 1.nginx配置 nginx中增加如下配置: location / …

代理模式的优缺点是什么?

什么是代理模式? 代理模式(Proxy Pattern)是一种结构型设计模式,它通过创建代理对象来控制对原始对象的访问。 这种模式在前端开发中广泛应用,特别是在需要控制对象访问、添加额外逻辑或优化性能的场景中。 ​​核心…

【嵌入式学习3】UDP发送端、接收端

目录 1、发送端 2、接收端 3、UDP广播 1、发送端 from socket import *udp_socket socket(AF_INET,SOCK_DGRAM) udp_socket.bind(("127.0.0.1",3333))data_str "UDP发送端数据" data_bytes data_str.encode("utf-8") udp_socket.sendto(d…

AI重构SEO关键词精准布局

内容概要 在传统SEO策略面临搜索场景碎片化、用户意图复杂化的挑战下,AI技术通过多维数据分析与算法建模,正在重构关键词布局的逻辑框架。基于自然语言处理(NLP)的语义分析能力,AI可精准识别搜索词背后的需求层级&…

谷歌发布网络安全AI新模型Sec-Gemini v1

谷歌近日宣布推出实验性AI模型Sec-Gemini v1,旨在通过人工智能技术革新网络安全防御体系。该模型由Sec-Gemini团队成员Elie Burzstein和Marianna Tishchenko共同研发,旨在帮助网络安全人员应对日益复杂的网络威胁。 攻防不对称的破局之道 Sec-Gemini团队…

IntelliJ IDEA下开发FPGA——FPGA开发体验提升__下

前言 由于Quartus写代码比较费劲,虽然新版已经有了代码补全,但体验上还有所欠缺。于是使用VS Code开发,效果如下所示,代码样式和基本的代码补全已经可以满足开发,其余工作则交由Quartus完成 但VS Code的自带的git功能&…

Python语言的需求分析

Python语言的需求分析 引言 在信息技术快速发展的今天,编程语言的选择对于软件开发的成功与否起着至关重要的作用。Python作为一种高级编程语言,以其简洁易读的语法和强大的功能受到越来越多开发者的青睐。通过对Python语言的需求分析,我们…

抓wifi无线空口包之Ubuntu抓包(二)

一、设置网卡信道和频段,并抓包 1、使用iwconfig查看自己机器的无线网卡名称 wangwang-ThinkCentre-M930t-N000:~$ iwconfig lo no wireless extensions. eno1 no wireless extensions. enxc8a3624ab329 no wireless extensions. wlx90de80d1b5b1 IE…

深度学习实战电力设备缺陷检测

本文采用YOLOv11作为核心算法框架,结合PyQt5构建用户界面,使用Python3进行开发。YOLOv11以其高效的实时检测能力,在多个目标检测任务中展现出卓越性能。本研究针对电力设备缺陷数据集进行训练和优化,该数据集包含丰富的电力设备缺…

Day1:前端项目uni-app壁纸实战

uni-app官网下载HBuilder。 uni-app快速上手 | uni-app官网 点击HBuilder 安装 新建项目 工具——插件安装 安装uni-app(vue3) 我们先来准备一下: 先在wallpaper下新建目录 我已经建过了 同样,再在common下建images和style目录&…

mac命令操作

mac命令操作 快速删除一行: control u 剪切文件:步骤1、先进行Command c 进行选择复制文件,2、进行commandoptionv进行移动文件,如果commandv是进行复制文件。 commandcontrolD 三个键即可屏幕取词进行翻译 mac中可以使用快捷方…

C#语言的加密货币

C#语言与加密货币:一个开发者的探索之旅 引言 随着区块链技术的迅猛发展,加密货币的应用已经渗透到我们生活的方方面面。作为一种新兴的数字资产,加密货币不仅改变了传统的投资方式,而且对全球经济产生了深远影响。其中&#xf…

Mysql 概念

MySQL 是一种 关系型数据库管理系统(RDBMS),它使用 结构化查询语言(SQL) 来管理和操作数据。它最初由瑞典公司 MySQL AB 开发,后来被 Sun Microsystems 收购,现在属于 Oracle 公司。 一、MySQL…

Golang 项目平滑重启

引言 平滑重启(Graceful Restart)技术作为一种常用的解决方案,通过允许新进程接管而不中断现有的请求,确保了系统的稳定运行和业务连续性。同时目前公司的服务重启绝大部分也都适用的 go 的平滑重启技术。 本部分将对平滑重启的…

SQL SELECT DISTINCT 语句详解:精准去重的艺术

在数据驱动的时代,数据质量直接影响决策的准确性。面对海量数据时,重复记录如同沙砾中的金屑,既占用存储空间,又干扰分析结果。SELECT DISTINCT 语句便是那把高效的筛子,助您快速剔除冗余,提取唯一值。本文…

16-产品经理-需求的评审

在创建需求的时候,有一个"不需要评审"的复选框,如果选中该复选框的话,需求的创建成功后状态是激活的。 但大部分情况下面,需求还是需要评审的。 即使产品完全由一个人负责,也可以将一些不成熟的想法存为草…

计算机网络学习前言

前言 该部分说明计算机网络是什么?它有什么作用和功能?值不值得我们去学习?我们该如何学习?这几个部分去大概介绍计算机网络这门课程,往后会介绍计算机网络的具体知识点。 1.计算机网络是什么? 计算机网…

python全栈-JavaScript

python全栈-js 文章目录 js基础变量与常量JavaScript引入到HTML文件中JavaScript注释与常见输出方式 数据类型typeof 显示数据类型算数运算符之加法运算符运算符之算术运算符运算符之赋值运算符运算符之比较运算符运算符之布尔运算符运算符之位运算符运算符优先级类型转换 控制…

C语言一个偶数能表示为两个素数之和

我们可以先找到其中的一个素数,然后用这个偶数减去这个素数就可以求得了。 运行结果: