后端写的接口不区分 get 跟 post 是什么感受?

2019-07-10 10:29:23 +08:00
 JasonHu

作为一个前端切图仔而言,所有请求全部用 get 都可以跑通。包括登录

16536 次点击
所在节点    职场话题
116 条回复
BranZuo
2019-07-11 09:59:20 +08:00
语义上,GET 用于获取资源,POST 用于处理资源。当然用 GET 方法处理资源、POST 方法获取资源也是可以的,只能说是“合法”的,但不是“符合语义”的。
zhuweiyou
2019-07-11 10:05:31 +08:00
全 post 比较好,万一表单上传呢。
Seney
2019-07-11 10:08:13 +08:00
@Stlin 不出意外可能都是用一个模板生成的 或者会有公共处理的模块 0.0 如果限定传入参数 json 用 post 也合理
zjsxwc
2019-07-11 10:24:11 +08:00
安全性重要接口 post
请求体 size 大的接口用 post

不重要的接口用 get



对于 get 接口最简单恶意的攻击方式就是 img src="<你的 get 接口>"
icy37785
2019-07-11 10:32:10 +08:00
咋前面一堆我感觉贴子都没看明白就开始喷的,然后还能吵起来。
这帖子说的情况明明是后端不限制 post 还是 get 提交数据,现在是前端因为都支持所以就全 get 了,你们这里喷后端说 get 提交这问题那问题,这关后端毛事情啊。
感觉就是后端也不知道前端会怎么提交数据,给了规范前端也嫌烦,不如全给支持了,你前端爱咋地咋地。
总感觉现在的人阅读理解能力有问题,
abcbuzhiming
2019-07-11 12:00:20 +08:00
@rockyou12 你提到的 w3c 标准,我随便找了个机翻:

特别是,已经建立了这样的惯例:GET 和 HEAD 方法不应该具有采取除检索之外的动作的重要性。 这些方法应该被认为是“安全的”。 这允许用户代理以特殊方式表示其他方法,例如 POST,PUT 和 DELETE,以便使用户意识到正在请求可能不安全的操作。

请问哪里说了和缓存有关?

你不要转进好不好,你自己说的和缓存有关,你要说 http method 有提示用户安全性的作用,这个我承认(不过我们现实里不会用 http method 去表示安全,其实后端在接口实现上会考虑安全问题,而不是用 method 方式去提醒)。但是你自己在前面说的是缓存。

还有,http client 会对 get 进行缓存的例子,麻烦你举出来,现代一点的 http client。我还是那句话,就算是 http client。我倾向是你们没用对,而不是人家实现错了
Stlin
2019-07-11 13:08:15 +08:00
@Seney #103 后端是 JAVA,是不是用的一个模板我也不清楚,不过给后台的数据确实是只能 json
rockyou12
2019-07-11 14:59:45 +08:00
@abcbuzhiming 得了,你还要机翻,我也不和你辩了
lscho
2019-07-11 15:14:04 +08:00
@abcbuzhiming 大兄弟,你连 get 请求可能会被缓存都不知道,还说别人学艺不精,真是涨见识了。这不是常识吗?你自己去翻翻你经常浏览的网站的接口,get 请求是不是都有时间戳来防止缓存。
passerbytiny
2019-07-11 15:41:18 +08:00
要么按照 HTTP/RESTful 风格,至少区分 GET、POST、PUT、PATCH、DELETE。
要么按照万事从简风格(其实就是老版 Servlet/JSP 风格),GET、POST 全部按照 REQUEST 处理,剩下的一个都不要。

“读用 GET,写用 POST ”、“查询用 GET,增删改用 POST ”这种只使用 GET、POST 还做区分的,有一句话能很形象的说明:一瓶不满半瓶咣当。
abcbuzhiming
2019-07-11 16:45:34 +08:00
@rockyou12 因为我英文不够好所以我机翻,免得有人说我英文不好。你说不要机翻,行啊,你告诉我你这段哪里提到和缓存有关了
abcbuzhiming
2019-07-11 16:49:05 +08:00
@lscho 对,我还真不知道 get 请求有可能会被缓存,我只知道 w3c 标准实现里,控制缓存由 http header cache-control 里,从没听说过根据 http method 类型来决定缓存的,默认 get 所以就缓存的标准和 http client 实现我还真没见过,你们不是比我见识多吗?让你们给出 get 请求就缓存的标准和 http client 实现。你们就是不给。让我说啥?
unco020511
2019-07-11 17:02:05 +08:00
坚持 restful 规范,如果后端觉得无所谓,那只能说明他们做的不对,你自己坚持对的就行了
takahashibigs
2019-07-11 17:37:42 +08:00
有看工作的同学可以来了解下
base 杭州城西 [光年实验室] 招一名高级 Web 前端开发
需要熟悉前端自动化和工程化、webpack,有 Node.js 和小程序开发经验的
能够精通使用 React 框架和独立开发组件的朋友可以联系我( Gnlab666 )

技术氛围很好,团队平均代码年龄超 10 年,办公电脑都是顶级配置
15-25* 14 薪+股权
rockyou12
2019-07-11 21:39:52 +08:00
@abcbuzhiming 你也别杠了,多码几年代码再回来看这个贴吧。最好把英文也提高下,看下协议原文怎么定义的
akagishigeru
2019-07-12 07:41:44 +08:00
restful 还是很好的 无脑 get post 简直坑

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/581616

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX