API-вызов Facebook внутри приложения FB требует входа (только в IE) - PullRequest
0 голосов
/ 09 июня 2011

Я сделал приложение FB, которое показывает предстоящие события публичной страницы. Я использую следующий JavaScript:

<script src="https://connect.facebook.net/en_US/all.js"></script>
...
FB.init({
    appId  : {APP_ID},
    status : true, // check login status
    cookie : true, // enable cookies to allow the server to access the session
    xfbml  : true  // parse XFBML
});

FB.api('/{page_id}/events?since=today', function(response) {
    ...
});

код отлично работает в chrome и firefox (хотя только при загрузке на сервер и выполнении внутри FB (https://apps.facebook.com/{app_name}/), не локально или при вызове напрямую с хост-сервера), но при запуске в IE я получаю эту ошибку:

{
   "error": {
      "type": "OAuthAccessTokenException",
      "message": "An access token is required to request this resource."
   }
}

Я не понимаю, почему пользователь должен войти в систему, так как приложение в любом случае уже работает внутри FB. есть идеи?

спасибо симон

1 Ответ

0 голосов
/ 29 июля 2011

Поскольку приложение facebook запускается в iframe, вы должны настроить политику p3p, чтобы разрешить, т.е. запускать, поместить этот код в ваш Global.asax (при условии, что вы находитесь на asp.net):

protected void Application_BeginRequest(Object sender, EventArgs e)
{

    HttpContext.Current.Response.AddHeader("p3p", "CP=\"CAO PSA OUR\"");

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...