Pregunta

La pregunta lo dice todo:

¿Cómo puedo obtener un token de acceso para usar en las llamadas de API de gráficos desde una aplicación ASP.NET WebForms 4.0 iframe Canvas?

Mi aplicación de lienzo se ha configurado para habilitar el OAuth 2.0 para Canvas (beta), entre otras cosas.

alt text

Esto significa que estoy obteniendo el signed_request Parámetro en mi iframe que estoy leyendo con éxito.

Desde el Documentación oficial sobre autenticación de lienzo

El parámetro firmed_request es la concatenación de una cadena de firma HMAC SHA-256, un período (.) Y un objeto JSON codificado Base64URL.

Hay un código PHP en la documentación que decodifica el signed_request Pero no he podido implementarlo propiedad en C# en parte Beacuse Para ser honesto, prefiero no reinventar la rueda sino usar el código de otra persona que ya ha sido probado.

Aquí es donde mi búsqueda de un buen SDK de C# Facebook comenzó de nuevo (ya que Facebook cambia todo cada pocos meses, las bibliotecas generalmente se vuelven obsoletas).

He usado el CodePlex's Kit de herramientas para desarrolladores de Facebook En el pasado, pero parece estar obsesionado con el último lanzamiento estable más antiguo (en la hora de la API de Facebook)

Hace unos meses usó el Facebook oficial C# SDK de GitHub, pero carece completamente del soporte de autenticación.

Ahora he encontrado en Nuget y realmente me gustó el SDK de Facebook C# Nathan Totten quien es uno de los Los mejores expertos de Facebook Aquí en Stackoverflow.

Si Nathan lee esto (o cualquier persona que también use este SDK), ¿cómo puedo usar este SDK para obtener un token de acceso para usar en mi aplicación Canvas?

De todos modos, si hay una mejor manera de conseguir una ficha, tal vez con la biblioteca JavaScript, háganme saber (y las personas que se preguntan lo mismo que yo).

¿Fue útil?

Solución

Oye, Carlos. Entonces, para obtener el token de acceso, solo necesita hacer lo siguiente después de que el usuario haya autenticado:

FacebookApp app = new FacebookApp();
var accessToken = app.Session.AccessToken;

Además, vea mi respuesta a esta pregunta: Aplicación Facebook-C#-SDK MVC "Hello World"-¿Cómo obtener el token de acceso?

Esperemos que eso ayude, de lo contrario avíseme si tiene alguna otra pregunta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top