2012-08-29 20 views
7

He estado pensando en crear una aplicación de estilo Windows 8 Metro (WinRT) que permita al usuario iniciar sesión/autenticarse con Steam WebAPI para poder usar su estadísticas etc. que proporcionan. Sin embargo, no estoy seguro de cómo abordar esto.OpenID en una aplicación de estilo Metro de Win8 (autenticando con Steam)

Casi todas las respuestas a la autenticación contra un proveedor de OpenID dicen usar DotNetOpenAuth pero al instalar esto con NuGet falla al decir que una dependencia (CodeContracts.Unofficial 1.002) no tiene ningún ensamblado compatible con el objetivo de mi proyecto (.NET framework 4.5) así que supongo que no se ha actualizado todavía para las aplicaciones de Windows 8 o no se debe a alguna restricción de WinRT.

También busqué usar la clase WebAuthenticationBroker de la biblioteca .NET, pero no estoy seguro de cómo usar esto con un proveedor de OpenID. Las muestras para que parecen ser sólo para OAuth, y en el Steam WebAPI Page la única información proporcionada es:

sólo tiene que descargar una biblioteca OpenID para su idioma y la plataforma de elección y el uso http://steamcommunity.com/openid como el proveedor. La ID reclamada devuelta contendrá el SteamID de 64 bits del usuario.

me trataron simplemente utilizando la URL dada pasándola directamente a AuthenticateAsync(WebAuthenticationOptions, Uri); pero esto sólo da una pantalla blanca con una ruleta en él.

¿Alguien tiene algún consejo para mí sobre cómo obtener una biblioteca OpenID trabajando con una aplicación metropolitana, o cómo usar WebAuthenticationBroker para auth a través del protocolo OpenID (preferiblemente contra vapor específicamente)?

Respuesta

1

http://steamcommunity.com/dev Esto significa que tiene que usar OpenID pero parece que la C# lib para openID no funciona con .Net 4.5.

Puede hacer un proyecto de aplicación de tienda de ventana dll C++ y usar OpenID C++ para hacer el trabajo. Luego agrega esa dll a tu aplicación de tienda de ventanas C#.

Cuestiones relacionadas