Win8 Metro风格应用中的OpenID(使用Steam进行身份验证)

6
我一直在考虑制作一个Windows 8 Metro(WinRT)风格的应用程序,允许用户使用Steam WebAPI进行登录/认证,以便我可以使用他们提供的统计数据等。然而,我不确定如何处理这个问题。
几乎每个针对OpenID提供程序的身份验证答案都建议使用DotNetOpenAuth,但是当我使用NuGet安装它时,它会失败,并显示一个依赖项(CodeContracts.Unofficial 1.002)没有与我的项目目标(.NET Framework 4.5)兼容的程序集,因此我猜测它可能还没有更新为Windows 8应用程序或由于某些WinRT限制而不会更新。
我还研究了使用.NET库的WebAuthenticationBroker类,但我不确定如何将其与OpenID提供程序一起使用。它的示例似乎只适用于OAuth,在Steam WebAPI Page上提供的唯一信息是:
只需为您选择的语言和平台下载一个OpenID库,然后使用http://steamcommunity.com/openid作为提供者。返回的声明ID将包含用户的64位SteamID。
我尝试简单地使用给定的URL将其直接传递给AuthenticateAsync(WebAuthenticationOptions, Uri);,但这只会显示一个带有旋转器的白屏。
是否有人能给我一些建议,告诉我如何使OpenID库与Metro应用程序配合使用,或者如何使用WebAuthenticationBroker通过OpenID协议进行身份验证(最好是针对Steam)?
1个回答

1

http://steamcommunity.com/dev 这里说你必须使用OpenID,但似乎OpenID的C#库不支持.Net 4.5。

你可以创建一个C++ dll窗口存储应用程序项目,并使用OpenID C++来完成工作。然后将该dll添加到你的C#窗口存储应用程序中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接