我有这段代码:
https://github.com/nbarbettini/SimpleTokenProvider/tree/master/test/SimpleTokenProvider.Test
这是通过.net CORE完成的,它是一个带有.net CORE的WEB API。
我需要实现具有相同安全性的WEB API,但使用.net框架而不是dot net core。
在哪里需要将来自Startup.cs,StartupAUth.cs,Program.cs的代码放在带有.net framework 4.5.2的经典asp.net web api项目中?
感谢
答案 0 :(得分:1)
在经典的asp.net网络项目中,您可能会发现Global.asax.cs
文件中的以下位置非常有用:
1)Application_Start
方法在应用程序启动时调用一次,对于每个Web服务器回收只需运行一个的配置代码非常有用。
2)Application_AuthenticateRequest
方法为每个请求调用一次,对身份验证代码有用,但要注意它无法访问会话状态。
3)Application_AcquireRequestState
方法在Application_AuthenticateRequest
后不久调用,对于需要访问会话状态的安全相关逻辑非常有用。
这三个应该能够为您提供实现功能所需的钩子。但是,您将无法使用与在asp.net核心中使用的代码相同的代码,因为两个平台之间的体系结构和可用对象不同。例如,Asp.Net Core中的HttpRequest
对象是一个与完整框架Asp.Net中的HttpRequest
对象不同的对象(在不同的命名空间中定义)。
在许多情况下(如HttpRequest),概念类似,这有助于移植代码,但这将是一个移植练习,因为对象上的方法和属性不相同。