Исправление Chrome Origin null не разрешено Access-Control-Allow-Origin

Я подготовил многие из других сообщений, которые ppl спрашивали здесь о происхождении, не допущенном blablabla,

Теперь я попытался добавить -Access-Control-Allow-Origin и включить приложения и даже отключить защиту, но каждый раз, когда я пытаюсь использовать свою кнопку на php-странице, она просто заявляет

Origin null is not allowed by Access-Control-Allow-Origin. 

Может ли кто-нибудь мне помочь? Вот код, вызывающий проблему

page.php

 <html land="en"> <head> <meta carset="utf-8"> <link rel="stylesheet" type="text/css" href="style.css"; </head> <body> <!-- Document Ready Event --> <input id="text" type="text" /><input id="submit" type="button" value="Submit" /> <div id="feedback"></div> <script src="../jquery-1.10.2.min.js"></script> <script src="script.js"></script> </body> </html> 

script.js

 $('#submit').click( function() { var text = $('#text').val(); $.get( 'PHP/reverse.php', { input: text }, function( data ) { $('#feedback').text( data ); }); }); 

Origin null is not allowed by Access-Control-Allow-Origin означает, что вы пытаетесь выполнить Ajax в локальном файле. Это запрещено по соображениям безопасности. Даже если это не так, ваш PHP не будет работать, потому что PHP поддерживается веб-серверами, а не веб-браузерами.

У вас установлен веб-сервер. Вы должны запрашивать свои страницы через сервер, а не обращаться к ним напрямую из вашей файловой системы.

Используйте URL-адрес, начинающийся с http://localhost/

Вам нужно будет переместить файлы так, чтобы они находились под DocumentRoot сервера (или перенастройте сервер, чтобы он мог получить к ним доступ из своего текущего местоположения).

Я не уверен, в каком браузере вы тестируете. В моем случае он работает для всех моих браузеров, если я отправляю вызовы AJAX из локального файла, что означает, что Origin is null . Я думаю, причина, по которой вы не можете заставить ее работать, заключается в том, что требуется некоторая кодировка на стороне сервера.

Попробуйте это, добавьте заголовок Access-Control-Allow-Origin в ответ HTTP и установите значение в * . Я не уверен, как это сделать в PHP, но вот часть кода Java для вашей информации.

response.setHeader("Access-Control-Allow-Origin", "*")

Этот хром-плагин позволяет запрашивать любой сайт с ajax из любого источника. Добавляет в ответ заголовок «Allow-Control-Allow-Origin: *»

https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi/related

Он работал для меня, не меняя ничего на стороне сервера. Но вы должны изменить withCredentials: false в запросе, если он соответствует вашим тестам.