У меня есть Laravel подписанная страница URL, , которая позволяет мне поделиться страницей с гостевыми пользователями.
Вот что я предлагаю
В соответствии с документацией существует метод проверки подписанных URL-адресов.
Вы можете дать пользователю URL-адрес, а когда пользователь загружает страницу (смонтированный компонент), отправить запрос AJAX с подписью и верните все необходимые данные о месте с контроллера, чтобы вы могли вставить их на страницу с помощью Vue.
JS
Axios.get(`/share/place/25?signature=${your_signed_url_signature}`)
.then(response=>{
const data = response.data; //your "place" data
//..do something with it
})
PHP
use Illuminate\Http\Request;
Route::get('/share/place/{id}', function (Request $request) {
if (! $request->hasValidSignature()) {
// not authorised
abort(401);
}
//Gather all necessary place data and return it
return response()->json([
'data' => $data
])
})->name('unsubscribe');
Если подпись, указанная для запроса AJAX, неверна или устарела, метод PHP вернет ответ о состоянии 401
, поэтому обязательно добавьте дополнительный код для обработки этого в вашем vue коде.