Отказано в получении небезопасного заголовка "Сообщение об ошибке X-DEBUGKIT-ID от Chrome, когда запрос CORS сделан из формы CakePHP
Об этой проблеме ранее сообщалось на https://github.com/cakephp/debug_kit/issues/379 но она никогда не была исправлена, за исключением:
Совет, чтобы игнорировать ошибку - ОК, хорошо!
Совет добавить заголовок $this->response-> (['Access-Control-Allow-Header' => 'X-DEBUGKIT-ID']); в домен, отвечающий на запрос CORS. То есть IFF у вас есть контроль над сервером CORS....
Я полагаю, что источником проблемы является то, что debugkit делает (неверно?) Предположение, что все запросы ajax являются одинаковыми запросами домена. Я говорю из-за этой строки кода в toolbar.js обратный вызов logAjaxRequest:
if (this.readyState === 4 && this.getResponseHeader ('X-DEBUGKIT-ID')).
Затем обратный вызов 'logAjaxRequest' (зарегистрированный toolbar.js) пытается прочитать заголовок 'X-DEBUGKIT-ID' из HTTP-ответа сервера CORS. Однако такой заголовок ожидается только для cakePHP.
Кстати, я запрашивал этот API через XMLHttpRequest () из некоторого JS на моей странице cakePHP: " http://maps.googleapis.com/maps/api/geocode/json?address=" + params; где params - это какой-то адрес местоположения.
В результате Chrome, будучи хорошим гражданином CORS, жалуется, и отладчик не справляется со своей задачей, то есть не регистрирует запрос, как предполагалось.
Мои вопросы - к любому специалисту по торту PHP:
Является ли приведенное выше разумным объяснением того, что происходит?
Если это так, может быть, это что-то, что можно легко исправить - так, чтобы запросы CORS были правильно зарегистрированы - как предполагалось?
Если нет, я был бы признателен за объяснение (проблемы), если у кого-то есть время.
Спасибо