Цель: У меня есть небольшой сервис для краткости. Я использую ссылки, созданные с использованием этих сервисов, как часть контента, который я публикую на facebook. Скребок URL-адреса Facebook пытается создать предварительный просмотр, указав URL конечной точки и вытащить релевантную информацию.Выполнение JavaScript перед перенаправлением без ущерба для предварительного просмотра, сгенерированного с помощью facebook URL-скребок
Это прямо сейчас работает, потому что я просто перенаправляю в PHP так, как это указано ниже, не позволяя мне выполнять JS до этого перенаправления. Я хочу узнать, есть ли способ выполнить этот JS.
Что я могу сделать? Хорошо! перенаправление от JS с использованием window.location
like this solution here...
В чем проблема? Если я это сделаю, скребок URL-адреса Facebook больше не сможет найти конечный URL-адрес получателя, что приведет к пустому просмотру моего сайта (в частности, страницы, на которой выполняется JS), вместо целевого сайта. Выполнение JS является обязательным, поэтому нельзя опустить это.
Вопрос: Есть ли способ, что я могу выполнить какую-нибудь JavaScript, прежде чем я сделать перенаправление с помощью расположения заголовка и все еще быть в состоянии получить правильные превью для URL-адресов?
Код ссылки - в Laravel контроллер
if($row->save()){
//i was first doing this and doing a redirect from the view.
//return View::make('pages/redirect')->with('originalUrl',$row->url);
//but then i realized it wasn't fetching the previews. So i do this now.
return Redirect::to($row->url);
//assuming it internally uses php's header location. I want to use the JS before this redirect.
}
нет напрямую. если вы выведете заголовок местоположения, тогда нет никакой гарантии, что остальная часть страницы будет отображаться или какой-либо код будет выполнен. вам придется прибегнуть к старым школьным методам. '' перенаправления, тайм-ауты javascript и т. Д. –
, но даже со старыми методами школы facebook не сможет найти исходное место для генерации предварительных просмотров. не так ли? Я думал о многом, но ничего не помогает. –
Вы пытались поставить скрипт после местоположения заголовка? Связанный: [Будет ли все код после заголовка перенаправления в PHP всегда выполняться?] (Http://stackoverflow.com/q/7246649/2033671) –