我已经通过应用程序的仪表板为 Facebook(用户和页面)设置了实时更新,并收到了来自 Facebook 的成功消息。但在那之后我没有收到任何来自 Facebook 的消息。如果用户对正在使用该应用程序的页面上的帖子发表评论,则即使 Facebook 应该也会从 Facebook 发送注释。
我已经阅读了 Facebook 开发人员页面上有关实时更新的所有内容,并使用谷歌搜索了互联网,但我似乎无法理解为什么它不起作用。
有人知道可能出了什么问题吗?有人知道为什么我没有收到任何更新吗?
问候,乔纳斯
这是我用来处理来自 Facebook 的帖子的代码。但是,除了用于设置和启动订阅的 POST 之外,没有来自 Facebook 的登录 IIS 的 POST。
protected void Page_Load(object sender, EventArgs e)
{
String verify_token_created_in_app = "1234";
logger.Error("Nu borde det synas");
String hub_mode = Request.QueryString["hub.mode"];
String hub_challenge = Request.QueryString["hub.challenge"];
String hub_verify_token = Request.QueryString["hub.verify_token"];
int customerId = Convert.ToInt32(Request.QueryString["c"]);
if (hub_mode == null)
{
hub_mode = "";
}
if (hub_challenge == null)
{
hub_challenge = "";
}
if (hub_verify_token == null)
{
hub_verify_token = "";
}
if (hub_verify_token.Equals(verify_token_created_in_app))
{
Response.Write(hub_challenge);
}
if (hub_mode == "" || hub_challenge == "" || hub_verify_token == "")
{
HttpCookie sessionCookie = new HttpCookie("facilSession");
HttpContext.Current.Response.Cookies.Add(sessionCookie);
Utilities.customerId = customerId;
spreadClass spread = new spreadClass();
var client = new FacebookClient(spread.mfbAccessToken);
string jsonString = "";
realTimeUpdateParser = new RealTimeUpdateParser();
List<RealTimeUpdateParser> realTimeUpdateParserList = new List<RealTimeUpdateParser>();
try
{
logger.Error("Inne i metoden som ska läsa JSON från Facebook");
// VerifyPostSubscription will throw exception if verification fails.
dynamic result = client.VerifyPostSubscription(
Request.Headers["X-Hub-Signature"],
new StreamReader(Request.InputStream).ReadToEnd());
// result is a json object that was sent by Facebook
// for now just call ToString() so it returns the json string
jsonString = result.ToString();
logger.Error("jsonString: " + jsonString);
// Process the result
// for this demo we will just add it to the list
}
catch (Exception ex)
{
logger.Error("Error: " + ex.Message);
}
realTimeUpdateParserList = JsonConvert.DeserializeObject<List<RealTimeUpdateParser>>(jsonString);
ConnectToFacebookAPI connectToFacebookAPI = new ConnectToFacebookAPI(client, spread);
connectToFacebookAPI.HandleRealTimeUpdateFromFacebook(realTimeUpdateParserList, customerId);
}
}