В конце концов мне удалось ситуацию путем анализа параметров в URL-адрес что-то вроде
http://apps.facebook.com/MyTestApp/index.php?p=goto#item/48
так, одной рукой, как только я землю на index.php, с помощью PHP Я проверяю $ _GET ['vairable'] и использую это как триггер, чтобы получить хэш-строку для подачи переменной javascript, которая выполняется непосредственно, до включения блока. Итак, как только mainController (угловой контроллер, связанный с индексом) выполняется, переменная с контуром уже создана. В этот момент угловой определяет, что есть переменная, которая заставляет путь идти куда-то, и он получит там маршрутизацию.
вот некоторый код
index.php в теге, сразу после Jquery Lib включения и прямо перед угловой включает
<script language="javascript" type="text/javascript">
var redirect_to = null;
$(function() {
<?php
// redirecting rulez
if(isset($_GET['p'])) {
?>
redirect_to = window.parent.location.hash.substring(1);
<?php
}
?>
});
</script>
в mainControl.js, что это тот, который попасть аль раз, что вы загружаете index.php
if(redirect_to != null)
$location.path(redirect_to);
в других контроллерах
if(redirect_to != null)
window.parent.location.hash = "#" + $location.path();
повторить все остальные контроллеры.
Facebook-приложения находятся внутри iframe. Я не уверен, как вы предположили, что можете «синхронизировать» ваш URL-адрес документа iframe с URL-адресом родительской страницы, то есть facebook? – Stewie
Я думаю, вам придется обрабатывать его вручную, управляя путем hashbang в адресной строке браузера. Это первый вопрос StackOverflow, который я нашел, который обращается к тому, как это сделать, в основном * я думаю * вы передадите хэш-часть URL-адреса из службы углового '$ location' в объект' location' javascript и затем отмените навигацию браузера , Пример в вопросе использует Jquery http://stackoverflow.com/questions/2366481/attaching-hashtag-to-url-with-javascript Здесь документация местоположение на угловой HTTP: //docs.angularjs .org/гид/dev_guide.services. $ расположение – Jason