Мы уже давно используем библиотеку java-facebook (несколько лет), хотя, похоже, одной из причин, по которой мы не получаем новых пользователей через FB, является то, что новые пользователи видят ошибку, которая Я понимаю, что из-за новой (в июне) безопасности FB.
В настоящее время у нас есть «простое» приложение Canvas FB, использующее FBML, к которому пользователи могут получить доступ через:
http://apps.facebook.com/$MYAPP
URL-адрес холста возвращается:
http://www.facebook.com/connect/uiserver.php?app_id=$APPID&next=http%3A%2F%2Fapps.facebook.com%2F$MYAPP&display=page&locale=en_US&return_session=0&fbconnect=0&canvas=1&legacy_return=1&method=permissions.request
Этот URL для новых пользователей (которые ранее не авторизировали наше приложение) возвращается с:
API Error Code: 100
API Error Description: Invalid parameter
Error Message: next is not owned by the application.
Существующие пользователи (которые включили приложение до июня) могут получить к нему доступ без проблем.
URL нашего сайта указан как:
http://apps.facebook.com/$MYAPP
Эта ошибка означает, что URL-адрес сайта и следующий URL-адрес должны быть в одном домене, а не в facebook.
Мне удалось изменить URL-адрес сайта на:
http://www.OURREALAPP.com/
И, домен должен быть:
OURREALAPP.com
А затем смог изменить URL-адрес Canvas для возврата:
https://graph.facebook.com/oauth/authorize?client_id=$CLIENT_ID&redirect_uri=http%3A%2F%2Fwww.OURREALAPP.com%2F$URL%2F
Это прекрасно работает, в первый раз. Он запрашивает разрешение и отображает правильные данные. Однако, если мы обращаемся к нему во второй раз, он не отображается в «рамке Facebook», т. Е. Отправляет пользователя непосредственно в приложение.
Я также пытался изменить redirect_uri для перехода на apps.facebook.com/$MYAPP ... но это дает нам ошибку об отсутствии владельца URL.
Что нам нужно сделать? Есть идеи?
Спасибо!