管理用户时,哪种方法(POST,PUT,GET,DELETE)适用于每个操作?

我开发了一个网页使用HTML,PHP,JavaScript(与查询和AJAX)和MySQL。在这个页面中,我有一个登录系统和一些表单来管理用户(更改密码,注册,搜索,编辑和删除)。对于这些操作中的每一个,我都使用ajax(使用POST方法)以避免重定向。一切工作正常,但我想在每种情况下使用最合适的方法。 在每一种情况下,我都有一个带有一些输入和一个按钮的表单来提交数据(我称之为onclick事件中的一个函数)。然后,在这些函数中,我使用ajax使用POST发出请求并将一些数据传递给php文件,这些文件从数据库中选择,插入,更新或删除数据。管理用户时,哪种方法(POST,PUT,GET,DELETE)适用于每个操作?

关于每种方法的定义,我认为最好的选择是POST登录,PUT更改密码和编辑用户,GET搜索(也许登录)和DELETE删除用户。然而,我已经读过,因为如果你使用GET来传递URL中的数据(尽管我使用ajax来避免重定向,所以我认为URL会是相同的),所以登录最好使用POST。我也读过一些浏览器不支持PUT和DELETE,所以最好不要使用它们。此外,我认为ajax不允许在删除方法中传递数据。

我已经看到很多人倾向于使用POST,但我不知道这是一种好的做法还是默认情况下完成的。

每个动作的最佳/正确/最合适的选项是什么?

编辑:更多信息:搜索,注册,编辑删除功能仅适用于管理员角色。其余用户登录并可以更改密码。

当管理员进行搜索(搜索注册用户,使用某些字段值,即名称=“Juan”的用户)时,会显示一个表,然后他可以单击编辑或删除(这些每个结果都会显示按钮),并提示窗口或提醒,但url始终保持不变,并且不会刷新。我有一个或多或少的静态页面,其中的页眉,页脚和菜单是固定的,唯一改变的是内容。这是我使用ajax的原因之一。

回答:

区别在于它是如何显示的。在这种情况下,我不相信你需要删除或放置。除了搜索之外,你只需要使用post就可以了。根据定义,post变量不会显示在地址栏中。你不希望人们发送链接访问那里的帐户我敢肯定,发布最好的,因为变量仍然隐藏给用户,但很容易通过请求方法或任何你喜欢在你的末端使用。在搜索中,get最有可能是最好的。如果有人想与朋友分享搜索结果集,他们可以轻松访问网址并发送,因为搜索输入将简单地位于页面顶部的地址栏中。如果我没有正确回答这个问题,你可以发送一个代码示例吗?我希望这有帮助!

我不确定我完全理解你问的问题是什么。我相信你问的是,“为什么表单提交时URL不会改变?”告诉我这是否正确。如果这是您问的问题,我想提醒您确保您的方法是GET。告诉我,如果那不是你想要问的问题,我会编辑答案。

以上是 管理用户时,哪种方法(POST,PUT,GET,DELETE)适用于每个操作? 的全部内容, 来源链接: utcz.com/qa/262268.html

回到顶部