Динамические метатеги в Angular 1.5.9 от API-сервиса - PullRequest
0 голосов
/ 13 июня 2018

У меня есть портал, встроенный в Angular 1.5.9 с использованием ui-router.Теперь, когда пользователь нажимает на что-то и маршрут меняется, мета-теги должны меняться.Или когда пользователь делится ссылкой на Facebook, его метаинформация должна отображаться.

Например, когда пользователь заходит в / home, отображаются метатеги по умолчанию.когда маршрут меняется на / detail, информация из службы API будет заполнять метатеги.Следовательно, когда URL-адрес является общим для других сайтов - мета-теги должны исходить от сервиса.

Примечание: в URL есть хеш.

Что я пробовал

  1. с использованием prerender.io - не сработало так как платное и не вполне устраивает мою проблему.
  2. попытался перенаправить бота facebook в файл с именем meta.php, который получит метатеги, но мне нужно знать URL-адрес, к которому пытается обратиться бот-фейсбук, исходя из того, что я загружу информацию API втеги.Проблема в этом пункте (№ 2) заключается в том, что я не могу получить полный URL-адрес, к которому имеет доступ бот Facebook.После хеша (#) в URL-адресе сервер (nginx) не может распознать полный URL-адрес, который я пытаюсь получить в качестве параметра.Итак, если пользователь публикует URL-адрес website.com/#/page/details/23, я получаю только website.com/#, поэтому он загружает метатеги по умолчанию, а не конкретные.
  3. создал службу «metaService» для получения мета-тегов, но они не отображаются в отладчике Facebook при его последующей загрузке.Вызов metaService в onEnter внутри состояния, но не работает.

Что я уже знаю

  • Я использую очень старую версию Angular, так как проект старый и не может быть обновлен.
  • Угловой вариант предпочтительно для SPA, и это не SPA.
...