Get请求参数过长,超出限制
来源:6-5 【应用】封装资源过滤器

qq_慕侠4530557
2022-02-15
老师,如果Get请求参数过长,超出了url的长度限制,应该怎么办呢?我看网上有人说改为Post请求,将参数放入body中,但是Post请求又是被用来创建资源的,那如何在后端的Post请求中将查询和新增区分开呢?
写回答
1回答
-
其实GET请求也可以加body的,如果参数实在是太长,可以放在body中处理,https://juejin.cn/post/6844903685206573069。但是但是但是,重要的事情说三遍,get 请求带body的方式不常用、也不推荐。因为我在实际工作中发现有相当一部分http解析工具或者类库无法处理Get请求中的body。所以,get 请求带body的方式只能用来处理极端情况。
从我个人的经验来说,我会倾向于把GET请求改为POST来完成任务。实际上,restful只是一个非常理想化的标准,让所有的请求都100%满足restful语义其实是很难做到的,尤其是某些针对于颗粒度非常细的服务。所以,我们有时候还是得做一些妥协。
比如,我现在的公司在处理大数据搜索的时候,包括查询在内所有的请求全部都是post。
112022-09-16
相似问题
JWT在请求流中的位置
回答 1
批量删除,URL过长怎么办?
回答 2