Fork me on GitHub

IntelliJ IDEA 模拟 POST方式 上传文件

IntelliJ IDEA 模拟 POST方式 上传文件


 

IntelliJ IDEA 集成了 HTTP Request,在没有postman的场景下,也可以很方便地模拟各种 HTTP 请求方式的场景。

如下示例是今天遇到的 POST方式 模拟上传文件接口的调用,分享给大家,仅供参考。

 

File --> New --> 菜单列表的最下方可以找到 HTTP Request

(个人的IDEA是 2020.2.4 版本,不同版本的IDEA,HTTP Request 的位置可能会有点差异)

 

1、新建HTTP Request

(POST 请求方式)

 

2、请求示例

POST http://10.150.210.21:8080/services/workorder/instance/uploadAttachment
Content-Type: multipart/form-data; boundary=WebAppBoundary
X-Auth-Token: c3efefd6e930451f8ed56ae7386157a0

--WebAppBoundary
Content-Disposition: form-data; name="instanceId"
Content-Type: text/plain

155
--WebAppBoundary
Content-Disposition: form-data; name="type"
Content-Type: text/plain

1
--WebAppBoundary
Content-Disposition: form-data; name="userId"
Content-Type: text/plain

9de90ca4048141caaba1ec4e3afa868e
--WebAppBoundary
Content-Disposition: form-data; name="files"; filename="Lark20201204183701.png"
Content-Type: image/png

< C:/Users/Administrator/Desktop/Lark20201204183701.png
--WebAppBoundary--

【说明】

1、特别注意:

示例中的红色部分需要注意!

示例中的红色部分需要注意!

示例中的红色部分需要注意!

2、因为是上传文件,所以请求头里要有 Content-Type: multipart/form-data

3、如果有其他参数,比如:instanceId = 155,需要按照示例中的格式,变量值变量名所在行之间至少要空有一行用于区分(建议空出一行,看着比较整齐

4、< C:/Users/Administrator/Desktop/Lark20201204183701.png 表示上传 C:/Users/Administrator/Desktop/ 目录下名为 Lark20201204183701.png 的图片文件

5、图片类型Content-Type: image/png 表示;或者不写也可以,默认会自动识别

6、第二行中的 boundary 表示参数参数值定义范围的起始边界线,对应的默认值是 WebAppBoundary,也可以自定义,比如:WebAppBoundary123

     但是,一定要确保后续书写变量范围的时候,和自定义的保持一致!!否则,请求会报错!!

7、边界线值在用的时候,语法上规定要在边界值前加上两个英文的中划线--),并且一定要左对齐

 

举例如下(boundary=WebAppBoundary123 也是可以的,只要注意下面用到的时候,保持一致即可!):

POST http://10.150.210.21:8080/services/workorder/instance/uploadAttachment
Content-Type: multipart/form-data; boundary=WebAppBoundary123
X-Auth-Token: c3efefd6e930451f8ed56ae7386157a0

--WebAppBoundary123
Content-Disposition: form-data; name="instanceId"
Content-Type: text/plain

155
--WebAppBoundary123
Content-Disposition: form-data; name="type"
Content-Type: text/plain

1
--WebAppBoundary123
Content-Disposition: form-data; name="userId"
Content-Type: text/plain

9de90ca4048141caaba1ec4e3afa868e
--WebAppBoundary123
Content-Disposition: form-data; name="files"; filename="Lark20201204183701.png"
Content-Type: image/png

< C:/Users/Administrator/Desktop/Lark20201204183701.png
--WebAppBoundary123--

 

3、请求效果

http请求文件内容

 

请求返回结果

 

 

PS:

Postman 模拟 POST方式 上传文件可以参考如下博文:

https://www.cnblogs.com/miracle-luna/p/14146188.html

 

posted @ 2020-12-16 20:25  龙凌云端  阅读(7868)  评论(4编辑  收藏  举报