노드 (koa2) 및 크로스 도메인 쿠키를 얻을 수

게이트웨이 서비스 노드, 쿠키를 수행하여 정보의 전송을 Yuzuo 프레임 koa2 단순한 기록 처리 및 도메인 간 쿠키 획득을 선택한다.

 

첫째 : 없음 프런트 엔드 멜론, 백 엔드 처리와 같은 크로스 도메인 문제를 처리하기 위해 koa2 - 크로마뇽 인을 사용하여 크로스 도메인의 문제를 해결합니다.

CONST의 고르는 = ( 'koa2-크로마뇽'요구 ) 

app.use ({고르 ( 
  : 원점 '*'를 
}))

 

둘째, 다음과 같이 매개 변수를 '포함':이 솔루션은 현재 도메인 쿠키 문제를 통해 전달 된 쿠키와 기본 브라우저 요청하지 않다, 쿠키가 구성 매개 변수를 추가 가져다 기본 자격 증명을 추가하는 방법을 가져 오기 위해 필요합니다 :

가져 오기 ( 'HTP : //192.168.210.151 : 3002 / 프록시' , {
     자격 증명 : '포함' ,
 })

추가 백엔드   credentails를 : true로 

const를 고르의 =은 ( 'koa2 - 크로마뇽 인'필요 )
 
app.use ({고르 (
   '*'기원 ,
   credentails : 사실을 ,
 }))

그런 다음 새로운 문제는 다음과 같은 질문이 발생 요청하는 브라우저를 발생

액세스 제어는-허용 - 원산지를 의미합니다 : '*'및 자격 증명 : 전송 요청에 '*'에 '*': 여기서 필요한 백엔드 요청 헤더 액세스 제어 - 허용 - 원산지를 공존 할 수없는 '포함' 같은 거친 시점 경우, 바로 다음에 기원

(가) CORS = CONST ( 'koa2-CROS'요구 ) 

app.use (CORS ({ 
  기원 : (CTX) =>을 { 
     CONST 유래 = ctx.headers.origin // 특정 상황에 따라 구성된 실제 생산 규칙을
      반환 유래 
  } 
} ))

 

응답 헤더 한 다음 다음을 얻을 수있는 클라이언트를 비교

 

결국,하지만 여전히 임시 헤더이 경고가 표시됩니다 발생하지만 당신은 또한 프런트 엔드 데이터를 얻을 수 있고, 백엔드는 쿠키를 얻을 수 있습니다.

 다른 브라우저는이 임시 헤더에 표시되지 않습니다 경고가 표시됩니다, 그래서 이것은 단지 크롬의 경고해야한다.

추천

출처www.cnblogs.com/YMaster/p/11315565.html