关于在 AJAX 请求中何时使用 POST 和何时使用 GET 的性质,也有人问过类似的问题
在这里: GET 与 POST ajax 请求:何时以及如何使用?
但是,我想明确表示这并不是我要问的。我得到了幂等性、敏感数据、浏览器能够在发生错误时重试的能力,以及浏览器能够缓存查询字符串数据的能力。
我的真实情况是,我想阻止我的用户简单地输入我的“Compute.cshtml”文件(即我的 jQuery$.ajax
函数发布到的服务器上的文件)的 URL。
我在 WebMatrix C#.net 网页环境中,我试图在文件名前加上下划线 ( _
),但显然 AJAX 请求属于与此下划线旨在防止显示它的相同标准,当然,打破了请求。
所以如果我使用 POST 我可以简单地使用这个逻辑:
if (!IsPost) //if this is not a post...
{
Response.Redirect("~/") //...redirect back to home page.
}
如果我使用 GET,我想我可以发送附加数据,例如包含该值的字符串,"AccessGranted"
并在另一侧检查它是否等于该值,如果不等于则重定向,但这可以通过在地址栏中输入轻松复制(并不是说数据在另一边是敏感的,而是……)。
无论如何,我想我在问是否可以始终使用 POST 来处理这个逻辑,或者在 WebMatrix C#.net 网页环境中使用 GET 或 POST 和 AJAX 处理我的情况的适当方法是什么。