Как я могу получить главный URL (адрес Facebook) в моем приложении iframe?
Есть ли хорошее решение?
Вы имеете в виду URL-адрес домена Facebook?
Это не будет возможным из-за той же политики происхождения .
Вероятно, вы можете понять это из параметра POST «signed_request», который Facebook отправляет в приложения, загруженные на страницах.
В PHP это:
$_POST["signed_request"] list($encoded_sig, $payload) = explode('.', $signed_request, 2); $data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true); $page_id = $data["page"]["id"];
Если вы хотите, чтобы технические пользователи не могли подделывать личность родительской страницы, вы можете проверить значение $ encoded_sig; это, вероятно, перебор.
$ Page_id – это просто номер, поэтому вам нужно будет использовать другие API Facebook (или позвонить на «http://www.facebook.com/pages/k/$page_id» и посмотреть, куда вы перенаправлены ), чтобы получить полный URL.
https://www.facebook.com/pages/YOUR_PAGE_NAME/YOUR_PAGE_ID?sk=app_APP_ID&app_data=My%20custom%20data
вы можете передавать любые строковые данные по параметру app_data
Если вы можете дождаться первой загрузки, вы можете использовать jQuery:
$(document).ready(function() { var myurl = window.location.pathname; $.get("test.php", { url: myurl } ); });