【发布时间】:2016-11-10 10:48:19
【问题描述】:
System.IdentityModel.Tokens 和 Microsoft.IdentityModel.Tokens 命名空间之间似乎存在一些历史纠葛。我花了一天时间试图找到与我找到的 IdentityModel 对象匹配的文档,但不能。
我正在尝试设置我的 Web API 项目以使用 JWT 令牌,并且正在查看 Microsoft 文档,特别是他们说属于 System.IdentityModel.Tokens 命名空间的the TokenValidationParameters object。
但事实并非如此。我在我的项目中正确引用了 System.IdentityModel.Tokens,从 Nuget 等处获得了最新信息,但该对象不存在。
但是我确实在“Microsoft.IdentityModel.Tokens”命名空间中找到了这样一个对象——但它没有我在各种方式中看到的属性- 到网站,例如:
微软代码:
code.msdn.microsoft.com/AAL-Native-App-to-REST-de57f2cc/sourcecode?fileId=96343&pathId=697488104其他很棒的网站:markwalsh.io/development/2014/12/02/ASP.Net%20Web%20API%20with%20JWT/
这些网站引用不存在的“System”对象,并使用“Microsoft”不具备的属性,例如“SigningToken”和“AllowedAudience”。
我发现所有文档和操作方法都集中在 System.IdentityModel.Tokens 命名空间上,因为其中的对象不存在而无法使用。
SO:有人可以为我指出在 Web API 中执行 JWT 的一个很好的方法参考,使用 Microsoft.IdentityModel.Tokens 命名空间?
我为此浪费了一天的时间,希望能得到帮助。
后续问题:我是否需要为 OWIN 配置此项目才能使其突然工作?我几乎找不到在 Web API 中提到 JWT,它不会自动假定您正在做 OWIN。
【问题讨论】:
-
来自help center:要求我们推荐或查找书籍、工具、软件库、教程或其他场外资源的问题与 Stack Overflow 无关 .指向良好的操作方法参考 的指针将是场外资源。你能改写你的问题吗?
-
肯,你是 100% 正确的。我想我比我知道的更沮丧。我不知道我 可以 将其重铸为有效的 SO 问题,所以我超出了界限。并感谢您如此礼貌和亲切地说。我已经看到了这种事情可以升腾的火焰......
-
你not the only one 看起来很痛苦。
标签: c# asp.net-web-api jwt