-1

我们的项目包括一个处理身份验证/授权和页面呈现的 MVC 区域,以及一个也需要身份验证/授权并向页面发送数据的 API 区域。我们决定对服务器进行无状态处理,因此每个请求都必须包含带有用户凭据的授权标头。

xhr.setRequestHeader('Authorization', 'Bearer ' + authCookie);我使用jquery's 中的 API 调用来完成此beforeSend操作,但是我不确定如何为 MVC 端执行此操作(每次单击链接或输入 URL 时,请求都应包含 Authorization 标头)。目前我正在内部执行此操作Application_BeginRequest并进行设置Request.Headers["Authorization"] = Request.Cookies["auth"];,但我希望 Authorization 标头位于初始请求中,而不仅仅是在发送请求后添加。

4

1 回答 1

2

我相信您将无法设置标题;当浏览器通过锚点单击将您定向到链接时(除非您使用 jquery 捕获所有锚点单击,似乎有点过分),也不会在表单提交时发送标题(获取/发布,除非您再次捕获所有表单提交),并且杀手是服务器端重定向也不会重新发送任何自定义标头的事实。

我强烈建议您重新考虑您的设计,而不是回答如何在 jQuery 中做某事,因为基于上述事实,您很可能会遇到技术限制。

于 2013-09-19T04:21:49.170 回答