Ошибка: Content-Type не разрешен Access-Control-Allow-Headers - PullRequest
49 голосов
/ 17 февраля 2011

Я получаю эту ошибку в Chrome при попытке отправить ajax-запрос:

Content-Type is not allowed by Access-Control-Allow-Headers

Все отлично работает в Firefox.

Может кто-нибудь помочь мне решить эту проблему?

Ответы [ 6 ]

101 голосов
/ 28 декабря 2011

Я решил проблему, добавив в конфигурацию виртуального хоста Apache Web Server следующие параметры

Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept"
11 голосов
/ 15 сентября 2015

Решение для PHP:

header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: POST,GET,OPTIONS');
header('Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept');

(необходимо отправить это перед любым другим контентом)

3 голосов
/ 12 сентября 2015

Настройка CORS (межсайтовых HTTP-запросов) в узле. Для меня это выглядит следующим образом:

app.use('/api', function(req, res, next) {
  res.header('Access-Control-Allow-Origin', '*');
  res.header('Access-Control-Allow-Headers', 'X-Requested-With, Content-Type');
  next();
});
2 голосов
/ 25 марта 2011

У меня была такая же проблема, и я решил ее, добавив следующий заголовок: Access-Control-Allow-Headers: content-type

1 голос
/ 14 июня 2018

для nginx

location / {
    proxy_pass http://localhost:59100;
    proxy_http_version 1.1;
    # proxy_set_header Upgrade $http_upgrade;
    # proxy_set_header Connection 'upgrade';
    proxy_set_header Host $host;

    # Simple requests
    if ($request_method ~* "(GET|POST)") {
      add_header "Access-Control-Allow-Origin"  *;
    }

    # Preflighted requests
    if ($request_method = OPTIONS ) {
      add_header "Access-Control-Allow-Origin"  *;
      add_header "Access-Control-Allow-Methods" "GET, POST, OPTIONS, HEAD";
      add_header "Access-Control-Allow-Headers" "Authorization, Origin, X-Requested-With, Content-Type, Accept";
    }

    # proxy_cache_bypass $http_upgrade;
    # add_header Access-Control-Allow-Origin *;
    # add_header Access-Control-Allow-Headers Content-Type;
}

см https://distinctplace.com/2017/04/17/nginx-access-control-allow-origin-cors/

0 голосов
/ 01 ноября 2017

Для меня с PHP локально работает, даже если я установил только этот параметр заголовка:

header('Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept');

...