Как получить текущий appID из URL?
У меня есть приложение в Facebook, и я хочу использовать эту же систему в другом приложении. У меня есть все данные, хранящиеся в базе данных (appid, appsecret, pageid и т. Д.), Но если я загружаю приложение в facebook, я не могу понять, какой appid является текущим приложением.
Например: когда я захожу на app_1234567890123456, мое приложение должно выглядеть как "эй, это приложение с идентификатором 1234567890123456, давайте посмотрим, есть ли оно в моей базе данных"
Но теперь мое приложение больше похоже на "wtf? Я действительно понятия не имею, что все это".
Я знаю, что в Facebook есть эта штука $facebook->getAppId, но для этого мне нужно подключиться к Facebook с секретом приложения и appid, и это две вещи, которые я не знаю в данный момент. Я могу установить соединение только с Facebook, если знаю appID из текущего URL.
2 ответа
Когда пользователь заходит в ваше приложение Canvas внутри Facebook, Facebook публикует данные по URL-адресу, который вы указали в настройках приложения.
Данные, которые вы получаете с этим сообщением, являются подписанным запросом, который, если он не загружен на страницу страницы, не включает данные приложения.
SDK, который у вас есть на стороне сервера (из вашего кода выглядит как php sdk), не знает о данных приложения, и вам нужно передать его в SDK самостоятельно, и из-за этого вам придется выяснить это самостоятельно.,
Я предлагаю вам использовать разные URL-адреса для приложений, поэтому:
- приложение № 1 получает: example.com/facebookapp1
- Приложение № 2 получает: example.com/facebookapp2
У вас может быть одна и та же система для обслуживания этих URL, и она будет действовать одинаково для обоих, за исключением того, что она будет знать, какое приложение запрашивал пользователь.
Вы можете получить идентификатор страницы Facebook из параметра подписанного запроса
http://developers.facebook.com/docs/authentication/signed_request/
В зависимости от вашей реализации, вы могли бы использовать это вместо этого?