Я хочу, чтобы изображения в формате html загружались только для аутентифицированных пользователей.Так, например, я написал следующий код:
[на стороне клиента]
<img src="/image/showWorkImg?fileName=ed296da987c8ab75c42dce07e.jpg" alt="undefined" style="float:left;height: auto;width: auto"/>
[ImageController]
class ImageController extends Controller
{
public function showWorkImg(Request $request)
{
try {
$fileFullName = config('app.image_path') . '/' . $request->fileName;
return \Image::make($fileFullName)->response();
} catch (\Exception $e) {
return "";
}
}
}
И, безусловно, процесс аутентификациинаходится на промежуточном программном обеспечении между клиентской стороной и ImageController.Однако, как вы знаете, HTML-тег image не может отправить запрос с токенами на основе заголовка.Отправляет запрос только с куки.Поэтому я решил синхронизировать токен авторизации заголовка с токеном авторизации cookie следующим образом.
[на стороне клиента]
localStorage.setItem(keyName, response.data.token);
cookies.set(keyName, response.data.token, {path: '/'});
Интересно, нет ли проблем с такой стратегией.