aplicativo de formulários da web @Facebook obtém app_data querystring
Como obtenho a string de consulta app_data de um aplicativo de formulários da web do Facebook? Quero poder enviar algumas informações na sequência de consultas para que eu possa exibir diferentes telas iniciais no meu aplicativo. O aplicativo está sentado em uma guia da página.
Como obtenho "Page.aspx" em app_data? Preciso redirecionar o usuário para uma página diferente de Default.aspx
Encontrei a solução. Obtenha o Querystring do aplicativo da guia do facebook usando asp.net
using Newtonsoft.Json.Linq;
using System.Text;
public partial class Page_Default : System.Web.UI.Page
{
protected string output = "";
protected void Page_Load(object sender, EventArgs e)
{
output = "Whole thing:" +Request.Form["signed_request"];
output += "Second part:" + Request.Form["signed_request"].Split('.')[1];
try
{
string payload = Request.Form["signed_request"].Split('.')[1];
var encoding = new UTF8Encoding();
var decodedJson = payload.Replace("=", string.Empty).Replace('-', '+').Replace('_', '/');
var base64JsonArray = Convert.FromBase64String(decodedJson.PadRight(decodedJson.Length + (4 - decodedJson.Length % 4) % 4, '='));
var json = encoding.GetString(base64JsonArray);
var o = JObject.Parse(json);
output += "Decoded:" + json;
bool liked = (bool)o.SelectToken("page.liked");
output += "Liked:" + liked.ToString();
}
catch (Exception ex)
{
output += "Extract failed: " + ex.Message;
}
}
}
Além dissoesta postage foi útil
basta ter a certeza de adicionar a página direta nas configurações do aplicativo do Facebook, ex. www.site.com/deafult.aspx não www.site.com