【发布时间】:2013-05-10 14:30:30
【问题描述】:
关于在 AJAX 请求中何时使用 POST 和何时使用 GET 的性质,有人提出了类似的问题
这里: What are the advantages of using a GET request over a POST request?
在这里: GET vs. POST ajax requests: When and how to use either?
但是,我想明确指出,这并不是我要问的。我得到幂等性、敏感数据、浏览器能够在发生错误时重试的能力,以及浏览器能够缓存查询字符串数据的能力。
我的真实情况是,我想阻止我的用户简单地输入我的“Compute.cshtml”文件的 URL(即我的 jQuery $.ajax 函数发布到的服务器上的文件)。
我在 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 处理我的情况的适当方法是什么环境。
【问题讨论】:
标签: c# ajax post get webmatrix