首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >服务器API防御设计?

服务器API防御设计?
EN

Stack Overflow用户
提问于 2013-08-08 05:40:26
回答 2查看 71关注 0票数 0

例如,对于服务REST,http://service_host/stores/count=30将返回从DB提取的30个存储。

如果有人使用count=99999999,该服务将花费相当长的时间来归还所有的商店。我应该从服务端限制计数参数吗?或者我应该让客户来执行他们需要的任何限制?

另外,在服务端实现此计数参数(如有效类型、正值等)是否更好?我倾向于使服务更强大和安全,但不愿过多地检查它。

这里有什么设计惯例吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-08 10:03:52

您应该对服务端的参数设置一个限制,以便您的服务是可靠的,但同时您应该为客户端提供一个选项,以便用不同的请求获取更多的项。这通常是通过接受两个参数- offsetcount来完成的。偏移量是要返回的第一个项目的位置和计数--从要返回的offset开始的项目数。

一般来说-不要让客户滥用你的服务。在服务中实现有意义的限制,以便它是可靠的,并让客户端完成繁重的工作(创建和发送多个请求)。同时,支持这些多个请求和文档,特别是如果服务将由第三方开发人员使用。

票数 1
EN

Stack Overflow用户

发布于 2013-08-08 06:14:18

一般情况下,不要依赖客户来表现得很好。总是在服务器端保护自己。验证类型,执行参数限制,检查无效输入。否则,客户端可能无意中破坏整个系统(更别提恶意攻击了)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18118659

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档