程序员求职经验分享与学习资料整理平台

网站首页 > 文章精选 正文

JAVA面试|HTTP主要请求方法(java 调用http请求)

balukai 2025-07-24 16:33:37 文章精选 4 ℃

HTTP请求方法就像我们日常生活中的不同「动作」,告诉服务器要执行什么操作。以下是主要方法及其通俗解释和应用场景:


一、GET:拿东西

用途:从服务器读取数据(比如打开网页、查看图片)。

特点:参数直接暴露在 URL 里(如 ?keyword=苹果);可被缓存、收藏,有长度限制;安全且幂等:不会修改数据,重复请求结果相同。

场景:访问百度搜索「苹果」;打开微信朋友圈;查看商品详情页。


二、POST:交表格

用途:向服务器「提交」数据(比如填表单、上传文件)。

特点:数据藏在请求体里,适合敏感信息(如密码);不安全且不幂等:重复提交可能产生多个结果(如重复下单)。

场景:登录时提交账号密码;发微博/朋友圈;上传头像图片。


三、PUT:全量更新

用途:整体「替换」服务器上的资源(如修改用户全部信息)。

特点:需要传递完整资源数据;幂等:多次更新结果一致(比如把名字改成“张三”,重复提交还是“张三”)。

场景:修改个人资料(提交完整信息);更新文章全部内容。


四、DELETE:删东西

用途:从服务器「删除」资源(如删帖、注销账号)。

特点幂等:删一次和删多次结果相同(删了就不存在了)。

场景:删除微信好友;清空购物车中的某件商品。


五、PATCH:打补丁

用途:局部「更新」资源(只改某个字段,如修改手机号)。

特点:只需传递需要修改的部分;可能不幂等(具体看实现)。

场景:修改用户手机号(无需提交全部资料);调整商品价格。


六、HEAD:看个头

用途:只获取资源的「元信息」(比如检查文件是否存在)。

特点:响应无内容,只有头信息(如文件大小、类型)。

场景:检查链接是否有效;监控资源是否更新。


七、OPTIONS:问权限

用途:询问服务器支持哪些方法(常用于跨域请求)。

场景:浏览器发送跨域请求前的预检(比如前端调用不同域名的API)。


八、生活化比喻

假设你管理一个图书馆:

GET:查书(不会改变书架)

POST:捐新书(新增书籍)

PUT:替换整本书(比如旧版换新版)

PATCH:修改书的某一页(比如修正错别字)

DELETE:下架书籍


九、注意事项

安全性:GET、HEAD、OPTIONS不会修改数据,POST、PUT、DELETE 会。

幂等性:GET、PUT、DELETE多次请求效果相同,POST、PATCH不一定。

RESTful API设计时,合理使用这些方法能让接口更清晰(如用 PUT更新,而非POST)。

Tags:

最近发表
标签列表