【发布时间】:2014-06-22 19:54:10
【问题描述】:
每当公共用户尝试访问安全资源时,我的 MVC 应用程序中的模型和控制器都会引发 LoginRequired 异常。我正在监听调度错误,当我检测到一个是 LoginRequired 异常时,我会构造并返回一个自定义响应。
如果请求是一个普通的 HTTP 请求,事情很简单——我返回一个 302 重定向,而“位置”就是登录页面。但是当请求是 AJAX 时呢?
我在这里阅读了How to manage a redirect request after a jQuery Ajax call 关于设置响应标头然后在全局ajax 成功处理程序中查找它的信息。我可以这样做没有问题,但肯定应该有一个 HTTP 状态码来处理这个问题?
什么是好的代码选择?我需要一个在语义上相当合适的,但不会自动调用用户代理上的任何行为。
【问题讨论】:
-
所以你的意思是你可以通过 ie 传递你的内容。 json 表单
{'status':'login required','content':'--- (nothing cause the user id not authed) ---'}但你说你想要一些 http 状态或 http 标头对吗?但为什么呢? -
我只是以为这种场景会有http状态。