嘿伙计们!正在开发一个新的Cake应用程序,想知道有没有什么方法可以让我从Cake中删除ID-in-URL路由。也许可以通过某种方式在POST中传递ID?将ID作为URL参数传入似乎真的很粗制滥造和不安全。谢谢!
发布于 2011-01-09 18:48:30
“粗制滥造”在URL中包含ids是一种标准做法,也是一种完美的解决方案。查看您的问题的URL:
http://stackoverflow.com/questions/4638262/removing-id-from-cakephp-url
^^^^^^^
id此外,在URL中显示id绝对没有什么不安全之处。这只是一个没有任何意义的数字。如果用户仅仅通过知道这个id就可以做一些“不好的”事情,那么你的应用程序就是坏的和不安全的,而不是id传递机制。
试图绕过这个方案意味着绕过HTML协议的基本原理,并打开一个全新的蠕虫罐头。
发布于 2011-01-09 22:31:00
有些人更喜欢使用slugs而不是主键ids。这是来自此页面的URL的removing-id-from-cakephp-url部分。看一看SluggableBehavior。
但是,鼻塞可能会发生变化。因此,如果您想要一个永久链接,那么在URL中包含主键是很有用的。StackOverflow既支持来自其他网站的永久链接,也支持搜索引擎优化。:)
关于安全问题,我猜其他答案已经指出,还有其他方法可以确保应用程序的安全。
发布于 2011-01-09 18:52:18
你为什么这么在意?URL-s是为SEO原因而优化的,如果ID不是太长,那么它将不会很重要。如果是后者,请考虑使用包含数字和字母的较短版本,就像只包含数字的较长版本一样难以猜测。
如果您没有使用GET,并且没有在URL中提供参数,那么您的用户将无法复制粘贴该位置。
https://stackoverflow.com/questions/4638262
复制相似问题