В моем приложении я создаю веб-сайт внешнего интерфейса (основанный на React) и использую PHP в качестве внутреннего интерфейса.
Я получаю ошибку:
jquery.js: 9600 Не удалось загрузить HTTP: // локальный: 81 /: Значение
Заголовок «Access-Control-Allow-Credentials» в ответе «», который
должно быть ‘true’, когда режим учетных данных запроса ‘include’.
ПроисхождениеHTTP: // локальный: 3000Поэтому не допускается доступ.
режим учетных данных запросов, инициированных XMLHttpRequest,
контролируется атрибутом withCredentials.
мои заголовки PHP:
header('Access-Control-Allow-Origin: http://localhost:3000');
// header("Access-Control-Allow-Origin: *");
header('Content-Type: application/json');
header('Access-Control-Allow-Headers');
header('Access-Contol-Allow-Credentials: true');
мой запрос внешнего интерфейса выглядит так:
$.post(
{
async: false,
type: "POST",
url:'http://localhost:81',
data:
{
querytype: "dataRequest"},
crossDomain : true,
xhrFields: {
withCredentials: true
},
complete: this.completed,
success: this.reqsuccess,
error: this.reqError
});
Ну, вы не указали значения для заголовка «Access-Control-Allow-Headers». Значение должно быть разделенным запятыми списком разрешенных заголовков запросов. Заголовок является необязательным и не требуется для межсайтовых исходных запросов (CORS). Увидеть: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Headers.
Других решений пока нет …