Java实现curl调用带参数接口方法
使用 curl 调用带参数的接口时,参数的传递方式取决于 HTTP 方法和接口要求。以下是不同场景的示例:
1. GET 请求(参数在 URL 查询字符串中)
curl "http://example.com/api?name=John&age=30"
注意:若参数含特殊字符(如空格),需用 -G 配合 --data-urlencode 自动编码:
curl -G http://example.com/api \ --data-urlencode "query=hello world" \ --data-urlencode "page=1"
生成的 URL:http://example.com/api?query=hello%20world&page=1
2. POST 请求(表单数据格式)
curl -X POST \ -d "name=John" \ -d "age=30" \ http://example.com/api
或合并参数:
curl -X POST -d "name=John&age=30" http://example.com/api
默认头:Content-Type: application/x-www-form-urlencoded
3. POST 请求(JSON 格式)
curl -X POST \
-H "Content-Type: application/json" \
-d '{"name":"John", "age":30}' \
http://example.com/api
4. 混合 URL 参数与请求体(POST)
curl -X POST \ "http://example.com/api?category=tech" \ -d "title=Hello&content=World"
5. 上传文件(Multipart 表单)
curl -X POST \ -F "file=@/path/to/file.txt" \ -F "description=My File" \ http://example.com/upload
6. PUT/PATCH 请求
curl -X PUT \
-H "Content-Type: application/json" \
-d '{"id": 1, "status": "active"}' \
http://example.com/api/resource/1
关键选项说明
-X <METHOD>: 指定 HTTP 方法(如GET,POST,PUT)。-d <DATA>: 发送请求体数据(自动设为 POST 方法,除非用-X覆盖)。-H <HEADER>: 添加请求头(如Content-Type)。-G: 强制将-d参数转为 URL 查询字符串(常用于 GET)。--data-urlencode: 自动对参数进行 URL 编码。-F <FIELD=DATA>: 发送 multipart/form-data 数据(文件上传)。
根据接口文档选择合适的方法和数据格式。
到此这篇关于Java实现curl调用带参数接口方法的文章就介绍到这了,更多相关Java curl调用带参数接口内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
SpringBoot如何切换成其它的嵌入式Servlet容器(Jetty和Undertow)
这篇文章主要介绍了SpringBoot如何切换成其它的嵌入式Servlet容器(Jetty和Undertow),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-07-07
关于Java实体类Serializable序列化接口的作用和必要性解析
序列化是将对象状态转化为可保持或者传输的格式过程,与序列化相反的是反序列化,完成序列化和反序列化,可以存储或传输数据,一般情况下,在定义实体类时会使用Serializable,需要的朋友可以参考下2023-05-05


最新评论