#php #laravel
#php #laravel
Вопрос:
Я перенаправляю своего пользователя на сторонний URL.
Теперь всякий раз, когда они выполняют маршрутизацию, отображается пустая страница или вкладка по умолчанию, которая открыта, но на самом деле они перенаправляют на этот URL.
Что я хочу сделать, например, как только вызывается первая функция маршрутизации, мне нужно поместить туда загрузчик страниц, чтобы пользователь узнал, что они перенаправляют.
Как я могу это сделать в контроллере? Я могу загрузить файл просмотра, который я знаю, но после этого оставшийся код не будет работать с этой функцией.
Направьте меня сюда.
Заранее спасибо.
Я попытался загрузить файл просмотра, но оставшийся код не был запущен.
Комментарии:
1. Разве вы не можете просто перенаправить пользователей на «страницу хранения», где отображается счетчик, а также все остальное, что вам нравится. Когда эта страница загружается, вы можете запустить простой javascript или мета-перенаправление к фактическому месту назначения?
Ответ №1:
Просто направьте своих пользователей на страницу хранения, а затем запустите несколько простых перенаправлений javascript, чтобы доставить их к месту назначения.
app/routes/web.php
Route::get('redirect', 'YourController@redirect');
app/Http/Controllers/YourController.php
public function redirect(Request $request) {
$url = $request['url'];
return view('holding-page', compact('url'));
}
resources/views/holding-page.blade.php
<script type="text/javascript">
// Redirect the user to where they want to go after 3 seconds.
setTimeout(function() {
window.location.replace("{{ $url }}");
}, 3000);
</script>
Убедитесь, что вы кодируете URL-адреса, которые вы передаете в качестве параметра строки запроса.
https://yoursite.com/redirect?url=https://stackoverflow.com
Комментарии:
1. Привет, Алекс, спасибо, я знаю, что таким образом я могу достичь своей цели, но в функции контроллера есть мой некоторый код, который должен быть выполнен после того, как пользователь выполнения сможет увидеть страницу загрузчика. Но мой вопрос в том, что во время этого вычисления они ничего не видят.
2. Какое-либо решение для этого?