День добрый. Стоит на хостинге бесплатном сайт на Laravel 5.4. С помощью jQuery пытаюсь подгрузить документ ворд: Код (Javascript): $(function() { $('#res').load('https://docs.google.com/gview?url=http://site.ua/j.doc&embedded=true'); }); На что естественно получаю ответ с ошибкой: HTML: XMLHttpRequest cannot load [URL]https://docs.google.com/gview?url=http://site.ua/j.doc&embedded=true[/URL]. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin '[URL]http://site.ua[/URL]' is therefore not allowed access. Как решить проблему с CORS'ами... Много уже чего пробовал ничего не помогает... Или заголовки PHP: header("Access-Control-Allow-Origin: *"); должны быть у посредника - docs.google.com ?
Ну окей, а как же можно использовать ajax ссылаясь на другой сайт/хост? В моем случаем между двумя независимыми сайтами, которые разделены на frontend и backend части?
Есть вариант с JSONP, но и в этом случае, нужно, чтобы на стороне сервера сайта, к которому идёт запрос, ответ отдавался в необходимом формате, т.е. разработчики должны об этом позаботиться и предоставить вам такую возможность. И что вам мешает обратится к ним с просьбой открыть вам доступ CORS? Вы же не собираетесь воровать у них контент...
https://enable-cors.org/server_php.html вот выдержка из сайта, где якобы все просто и достаточно на стороне сервера(backend) добавить одну строку и все будет ок. Но на самом деле ни черта так и не работает...
Правильно, но вам уже @romach ответил, что это должно быть на стороне сервера того сайта, к которому идёт запрос. По сути, строка Access-Control-Allow-Origin: * говорит, что "я разрешаю всем делать ко мне кроссдоменные запросы".
Ну да это понятно. Я сделал как твердят доки, но все равно почему то получаю эту ошибку. На первом хостинге стоит Ларавель 5.4, уже даже там в public/index.php вписывал хедер, но по сути бестолку. На уровне apache не могу разрешить корсы.
Все, разобрался. Достаточно либо в public/index.php добавить header, либо в .htaccess. В моем случаи это использование Laravel 5.4.
@lunberg88 по порядку: 1. http://laravel.su/docs/5.4/responses#attaching-headers-to-responses 2. http://laravel.su/docs/5.4/middleware