2017-05-09 1 views
-1
나는 /api/test에 대한 고르는 thusly 히 설정 한

:CORS 프리 플라이트 응답 잘못된/빈 헤더

Allow-Origin: http://localhost:8133 
Allow-Headers: X-MyHeader 
Allow-Method: Get 

services.AddCors(options => 
{ 
    options.AddPolicy("default", policy => 
    { 
     policy.WithOrigins("http://localhost:8133") 
      .WithHeaders("X-MyHeader") 
      .WithMethods("GET"); 
    }); 
}); 

app.UseCors("default"); 

을 내가 /api/test에 GET 요청을 보내는 경우 액자를 사용하는 X-MyHeader 헤더의 경우 OPTIONS 요청

Access-Control-Request-Headers: x-myheader 
Access-Control-Request-Method: GET 
Host: localhost:8132 
Origin: http://localhost:8133 

나는 다시

Access-Control-Allow-Headers: x-myheader 
Access-Control-Allow-Origin: http://localhost:8133 
Date: {whatever} 
server: {whatever} 

Access-Control-Allow-Method 헤더가 누락받을?


이제 다른 헤더 (예 : X-NotSupportedHeader)를 추가하면

Access-Control-Request-Headers: x-notsupportedheader 
Access-Control-Request-Method: GET 
Host: localhost:8132 
Origin: http://localhost:8133 

내 대답은 모든 기준 중 하나라도 실패하면 설정에는 Access-Control-Allow-* 헤더가없는 이유

Date: {whatever} 
server: {whatever} 

그리고 콘솔에서

우리가

XMLHttpRequest cannot load http://localhost:8132/api/test. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8133' is therefore not allowed access.

를 얻을 수있다?

답변