1

我正在设计一个 Web 应用程序,我已将该应用程序拆分为两个 Web 项目,一个 MVC 项目和一个 WebAPI 项目。MVC 项目部署到绑定到http://mysite.com/app的虚拟主机。WebAPI 项目部署为 MVC 应用程序的子应用程序,并绑定到http://mysite.com/app/Data。这种拆分的原因是 WebAPI 站点可以打包为数据层的独立程序集,而 MVC 站点用作表示层。

身份验证和授权在顶级 MVC 应用程序中按预期工作,但在 WebAPI 子应用程序中没有。我本来希望子应用程序与其父应用程序共享相同的 HttpContext 。我错了吗?

有没有办法将父应用程序和子应用程序耦合在一起,以便它们彼此使用相同的授权上下文?

4

1 回答 1

3

我不认为 HttpContext 可以在两个应用程序之间共享。

由于两个应用程序在同一个域下,因此可以在它们之间共享 cookie 身份验证。这是有关为两个应用程序共享 cookie的MSDN 链接。

我觉得这里没有必要使用两个应用程序。您可以将所有与 web api 相关的代码放在另一个程序集中,并让 MVC 应用程序引用它。

于 2013-10-24T20:58:25.623 回答