Cors Origin в Direct Path в laravel при вызове изображений

Теперь я создаю веб-приложение, используя laravel 5.2 в качестве webserivce и angular2 в качестве главной страницы.
Я использую VR Library из http://cdn.pannellum.org
Моя проблема Когда я звоню по ссылке Iamge из моей базы данных, например, mywebsite.com/public/Images/photo7.png
верни мне это сообщение

Заголовок «Access-Control-Allow-Origin» присутствует в запрошенном
ресурс. ПроисхождениеHTTP: // локальный: 5565Поэтому не допускается
доступ.

но я справился с этой проблемой перед тем, как начать проект по передаче данных с laravel и angular, но когда я вызываю мои изображения с прямого пути, верните мне это сообщение

5

Решение

Ларавел 5 (L5)В моем проекте, когда я возвращаю изображение (файл) и хочу избежать CORS, я использую следующий код (я немного изменяю его вручную без тестирования, но он должен работать):

private function responseFile($filePath, $fileMimeType,  $originalFileName) {

$headers = array(
'Content-Type' => $fileMimeType,
//'Content-Disposition' => 'attachment; filename="'. $attachment->org_name . '"', - this header is added automaticaly
"Access-Control-Allow-Origin" => request()->getSchemeAndHttpHost() // allow CORS (e.g. for images)
);

return response()->download($filePath, $originalFileName, $headers);
}

В этом решении вам не нужно трогать Apache .Htaccess файл (или файлы конфигурации nginx) вообще (если вы сделаете это, это вызовет ошибки с дублированием заголовков) — потому что в этом случае мы используем так называемые Простой запрос CORS.

Вы также можете прочитать этот ответ чтобы избежать других проблем, которые могут вызвать эту ошибку CORS.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]