我一直在考虑制作一个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。
我尝试使用给定的网址直接传递给AuthenticateAsync(WebAuthenticationOptions, Uri);
,但这只是一个带有微调器的白色屏幕。
有没有人对我如何使用Metro应用程序获取OpenID库,或者如何使用WebAuthenticationBroker通过OpenID协议进行身份验证(最好是针对Steam)?
答案 0 :(得分:1)
http://steamcommunity.com/dev这说你必须使用OpenID,但似乎openID的C#lib不适用于.Net 4.5。
您可以创建一个C ++ DLL窗口存储应用程序项目并使用OpenID C ++来完成这项工作。然后将该dll添加到您的C#窗口商店应用程序。