Я много искал в Google и переполнении стека, чтобы найти решение для моей проблемы, но ничего не получилось.Запрос предварительной проверки CORS, возвращающий HTTP 401 с проверкой подлинности Windows
Вот моя проблема:
Я использую IIS 7 со специальной средой программирования под названием Webdev, которая не позволяет прямое манипулирование
OPTIONS
метода HTTP. Таким образом, все решения, предлагающие какую-либо обработку запросов на стороне сервера с использованием кода, невозможны.Я должен использовать проверку подлинности окна и отключить анонимный доступ
У меня есть страница, которая использует CORS для POST к этому серверу. Поскольку этот POST должен иметь
Content-type: Octet-stream
, предполетный период выдается браузером.Когда я разрешить анонимный доступ, все работает отлично (CORS хорошо настроен)
Когда я отключить анонимный доступ, сервер отвечает HTTP 401 несанкционированный ответ на предполетной просьбу, так как она не содержит учетные данные Информация.
Я попытался написать модуль для IIS, который принимает OPTIONS запросы, как это, но он не работает (не может добавить модуль правильно IIS, может быть)
public class CORSModule : IHttpModule { public void Dispose() { } public void Init(HttpApplication context) { context.PreSendRequestHeaders += delegate { if (context.Request.HttpMethod == "OPTIONS") { var response = context.Response; response.StatusCode = (int)HttpStatusCode.OK; } }; } }
на вопрос is: Как я могу заставить IIS отвечать HTTP 200 на запрос предполетной сессии без включения анонимного доступа или написания кода на стороне сервера? Есть ли простая конфигурация или готовый модуль для IIS? По крайней мере, какие подробные шаги по установке вышеуказанного модуля в IIS 7?
жизни заставки братан +1 –