【问题标题】:Authentication in Web API project using the session that is from ASP.NET Web Forms project使用来自 ASP.NET Web Forms 项目的会话在 Web API 项目中进行身份验证
【发布时间】:2019-04-22 07:31:19
【问题描述】:

我知道这是不好的,不推荐,但不幸的是,我正在处理旧产品并且权限有限,无法进行合理的更改以避免这种情况。

在我的解决方案中,我有一个 ASP.NET Web 表单网站,并且我最近添加了一个新的 ASP.NET Web API 项目。

Web 表单网站基于会话和 cookie (HttpContext.Current.Session)。

我必须将单个页面 React 应用程序粘贴到 Web 表单内的页面中。 React 应用程序的要求是使用单独的基于 ASP.NET Web API 的端点,同时使用 ASP.NET Web 窗体中可用的当前身份验证。

react可以访问本地cookie,自己组织项目、放置js文件等都没有问题。

唯一的问题是 - 我如何授权从 React 向 Web API 发出的请求?我必须使用 ASP.NET Web 窗体会话。

感谢您的指导。

【问题讨论】:

    标签: c# asp.net asp.net-web-api webforms asp.net-web-api2


    【解决方案1】:

    让您的 React 应用在向 Web API 发送请求时使用 cookie(如果域名允许,则在标头中使用,或者如果您在 HTTP 请求的正文中发送 cookie 的内容,则进行特殊的身份验证调用到 API)。

    然后,您的 Web API 可以使用 cookie 向 ASP.NET 应用程序发出 HTTP 请求。如果它返回的不是 401,那么你就知道 cookie 是好的。

    【讨论】:

      猜你喜欢
      • 2016-07-16
      • 1970-01-01
      • 2013-02-08
      • 2014-10-12
      • 1970-01-01
      • 2018-03-19
      • 2015-01-12
      • 2013-11-16
      • 2017-07-04
      相关资源
      最近更新 更多