У меня есть угловое приложение, вызывающее WebApi. У меня аутентификация и сеанс включены, поэтому мои сообщения и сообщения нуждаются в предполетных вызовах. Я включил Корс в WebApiConfig.vbweb api cors preflight Опции вызова выполняет метод контроллера
Public Sub Register(config As HttpConfiguration)
Dim corsAttr = New EnableCorsAttribute("http://localhost:13110", "Origin, Content-Type, Accept, Authorization","GET, PUT, POST, DELETE")
corsAttr.SupportsCredentials = True
config.EnableCors(corsAttr)
config.SuppressDefaultHostAuthentication()
config.Filters.Add(New HostAuthenticationFilter(OAuthDefaults.AuthenticationType))
* Примечание: Я также должен добавить заголовки ответа в identityConfig.vb Создать метод
If (context.Request.Path.Value = "/token") Then
Dim allowedList() As String = New String() {"http://localhost:13110"}
Dim credentialsList() As String = New String() {"true"}
context.Response.Headers.Add("Access-Control-Allow-Origin", allowedList)
context.Response.Headers.Add("Access-Control-Allow-Credentials", credentialsList)
End If
Каждый $ HTTP GET и после запроса к API-контроллер выполняет метод контроллера во время запроса параметров. Итак, что происходит, это методы, вызываемые дважды, один раз на «Параметры» и один раз на «Почта». Мне кажется, что этот метод не должен выполняться в настройках. Параметры должны просто предоставлять или запрещать разрешение на выполнение запроса.