2015-01-07 1 views
1

백엔드/서버가 인증이 필요한 원격 REST 서비스 apples을 호출 중입니다. 흐름은 다음과 같습니다 :NodeJS에 서버 측 쿠키를 저장할 위치는 어디입니까?

  1. ExpressJS $ http 모듈을 사용하여 http://remote.service.com/api/login으로 전화하십시오. 이 서비스는 인증 성공시 유효한 쿠키를 반환합니다.
  2. ExpressJS $ http 모듈을 사용하여 http://remote.service.com/api/apples으로 전화하십시오. 그리고, 내가 때마다 인증을 피하고 싶은 행의 apple 서비스를 여러 번 호출하는 서버 이후 1 단계

에서 검색 쿠키를 보내 그래서 다시 사용할 수있는 1 단계의 쿠키를 저장하는 방법에 대한 몇 가지 팁을 싶습니다 다음 번에. node-redis 또는 ExpressJS cookie-parser을 사용해야합니까? 쿠키 만료는 어떻게 처리해야합니까?

편집 : 쿠키는 전역 변수에 저장할 수 있습니다. 아래 의견을 참조하십시오.

+1

이 작업은 클라이언트 작업에 대한 응답으로 수행됩니까? 또는 이것보다 유지 보수 스크립트입니다. 단지 유지 보수 스크립트 일 경우 변수에 쿠키를 저장 한 다음 후속 반복에서 변수가 정의 된 경우 새 쿠키를 요청하지 마십시오. –

+0

원격 서비스 호출은 사용자가 트리거하거나 예약 된 시간 간격으로 실행할 수 있습니다. 쿠키가 사용자 세션에 저장되어서는 안됨을 의미합니다. –

+0

그리고 첫 번째 호출에서 쿠키를 요청하여 변수에 저장할 수없고 만료 될 때까지 다시 사용할 수없는 이유가 있습니까? –

답변

1

세션 토큰을 저장하기 위해 세션 저장소를 구현해야합니다. MongoDB 자체로도 그렇게 할 수 있지만, Redis는 최고의 옵션 중 하나입니다. 세션 저장소를 사용하지 않으면 다른 응용 프로그램 서버 인스턴스가 다른 서버에서 권한이 부여 된 사용자를 식별 할 수 없으므로 클러스터 모델에서 확장하면 문제가 발생합니다.

관련 문제