2016-09-30 6 views
0

두 개의 링 사이트 인 mysite.comapi.mysite.com이 있습니다. api.mysite.comring-cors 미들웨어를 사용할 수있다 : 나는 GET 또는 POST 요청을 수행 할 때링 그룹 활성화 사이트에 대한 요청이 실패합니다.

(def app 
    (-> (make-handler v1-routes) 
     (wrap-defaults api-defaults) 
     (wrap-cors :access-control-allow-origin [#".*"] 
       :access-control-allow-headers ["Content-Type"] 
       :access-control-allow-methods [:get :put :post :delete :options]))) 

는 프리 플라이트는 성공하지만 GET 또는 POST는 실패 : 차단

크로스 원산지 요청 : 동일한 기원 정책 원격 리소스를 http://api.site.com/v1/site으로 읽지 못하게합니다. (이유 : CORS 헤더 'Access-Control-Allow-Origin'이 누락되었습니다.)

내가 Access-Control-Allow-Origin이 아니라 이후의 GET 또는 POST 응답에서 OPTIONS 응답에 포함 된 디버거에서 볼 수 있습니다.

어떤 아이디어가 있습니까? 내 응용 프로그램은 조금 복잡하고 bidi, liberator 및 일부 hosts 파일과 nginx 일이 계속 진행됩니다. 나는 그것들을 지금은 제쳐두고 문제가 미들웨어 또는 미들웨어 구성과 관련된 문제로 추적 될 수 있다고 생각한다.

답변

0

하위 도메인에서 와일드 카드를 사용할 수 있는지 잘 모르겠습니다. 자세한 내용은 this SO answer을 참조하십시오. the spec에는 도메인 이름이나 와일드 카드가 필요하지만 둘 다 필요하지는 않습니다.

도메인을 추가하여 문제가 해결되는지 확인한 다음 거기에서 이동할 수 있습니다.

wrap-cors :access-control-allow-origin [#"http://sitename.com"] 
+0

'regex와'ring-cors '가 일치하고 일치하면'access-control-allow-origin '헤더에 원본을 연결합니다. 그래서, 아니, 이것은 대답으로 보이지 않습니다. – deadghost