Как установить заголовок ответа для метода предварительного запроса в IBM HTTP Server? - PullRequest
0 голосов
/ 27 декабря 2018

Я использую dojo / xhrpost (dojo 1.7) для вызова AJAX, получая эту ошибку

Доступ к XMLHttpRequest по адресу https://dev.services.com/secure/ui/services/getEmployeeDetails/AdditionalContact' от источника 'https://dev.ead.com'была заблокирована политикой CORS: Ответ на запрос предварительной проверки не прошел проверку контроля доступа: Перенаправление не разрешено для запроса предварительной проверки.

Попробуйте разрешить его двумя способами

1Добавив заголовок в Servlet Filter Class (Java).Ниже приведен фрагмент кода.

((HttpServletResponse) response).addHeader("Access-Control-Allow-Origin", "*");
          ((HttpServletResponse) response).addHeader("Access-Control-Allow-Methods","GET, OPTIONS, HEAD, PUT, POST");

            HttpServletResponse resp = (HttpServletResponse) response;

            if (request1.getMethod().equals("OPTIONS")) {
                resp.setStatus(HttpServletResponse.SC_ACCEPTED);
                return;
            }

         chain.doFilter(request1, resp);

2) Добавив теги Directory, Location, Virtual Host в файл httpd.config.Фрагмент ниже

LoadModule headers_module modules/mod_headers.so
<Directory ${APPCONTENT}/docroot>
AllowOverride None
Options Indexes  FollowSymLinks
Require all granted 

# Always set these headers.
Header always set Access-Control-Allow-Credentials "true"
Header always set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Methods "POST, GET, OPTIONS, DELETE, PUT"
Header always set Access-Control-Max-Age "1000"
Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token"

# Added a rewrite to respond with a 200 SUCCESS on every OPTIONS request.
RewriteEngine On
RewriteCond %{REQUEST_METHOD} OPTIONS
RewriteRule ^(.*)$ $1 [R=200,L]

</Directory>

################INCLUDE VIRTUALHOST################
Include ${APPCONF}/vhost.conf

Дополнительная информация: Получение HTTP: 302 Найдено в ответе, заголовок запроса предварительного просмотра содержит оба этих тега Access-Control-Request-Headers: content-type,x-required-with Access-Control-Request-Method: POST .

Используя вышеупомянутые два метода, я не могу установить заголовок ответа для этого предполётного запроса. Пожалуйста, кто-нибудь поможет мне решить эту проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...