通过ajax将对象的标识符传递给服务器/控制器的最佳方式是什么(例如,我们在网站“book/edit/mybookname”以及如何更新本书实体“mybookname”通过ajax)?通过Ajax将实体的身份传递给控制器
我想到了一些方法,并想知道,最常见的,最安全的方法是什么:
1)那本书的ID控制器
- >问题:ID变量/域可以通过使用浏览器
2)的控制台来改变传递当前URL(window.location.href)提供给控制器,并在控制器
提取出了名的URL的 - >窗口.location.href不能被改变呃控制台..?
我知道我必须检查服务器端,如果用户应该有权限编辑实体。但是,如果他有多本书,他可能会将ID参数更改为他拥有的另一本书,然后他将在后台更改另一本书的演示文稿,而不是他目前正在浏览的那本书。
您可以在用户访问“book/edit/mybookname”时设置会话变量。但我真的不明白这一点,如果用户想搞砸他/她自己的收藏品,那是他们的问题海事组织。 – jeroen
嗨jeroen,Session变量没有帮助,你可以用不同的书打开几个标签。好吧,通常的方法是说:检查访问权限,但是当记录的用户试图操纵表单/参数时,最终他只能搞乱他的书。 – user3746259
确保无法操作的唯一方法是使用不是来自用户的值,而是存储在服务器上的值。但正如你注意到的那样,这也可能会失败。所以,是的,他们的收藏,他们的问题,只要他们只能访问自己的东西。 – jeroen