2014-10-09 2 views
1

현재의 내 설정에 문제가 있습니다. 나는 Hapi.js와 CouchDB를 사용하고 있습니다. CouchDB 쿠키 인증을 사용하려고합니다.Hapi.js, CouchDB 및 문제 해결 AuthSession 토큰

사용자 이름과 암호로/_session을 쿼리하여 CouchDB에서 AuthSession 토큰을 얻고 있습니다. 그래서 괜찮습니다.

문제는 AuthSession 토큰을 어떻게 처리해야할지 모르겠다는 것입니다. 어디에서 그것을 저장? 예를 들어 Redis에 저장할 수 있다는 것을 읽었습니다. 그런데 어떻게? 어떤 형식으로?

사용자의 ID 및 AuthSession 토큰을 Redis에 저장한다고 가정 해 봅니다. 그런 다음 5 명의 사용자가 동시에 로그인 했으므로 Redis에 5 개의 토큰이 있다고 가정 해 봅시다. 사용자가 요청할 때마다 Redis에서받을 토큰을 어떻게 알 수 있습니까? 쿠키 인증 CouchDB를 작동

답변

0

방법은 다음과 같이이다 :

  1. POST/_usersdB의 사용자와 일치하는 자격 증명으로 /_session에.
  2. 응답에 브라우저가 AuthSession 쿠키를 설정하기위한 지침이 포함되어 있습니다.
  3. 그런 점에서 그 도메인에 대한 모든 추가 요청 (아약스 포함)은 쿠키로 만들어집니다.

당신이 어딘가에 브라우저와 CouchDB를 사이 AuthSession 쿠키를 저장하기 위해 필요로하는 경우, 여전히 브라우저가 쿠키를 설정할 수 있도록하는 것이 더 쉬울 수 있습니다, 그리고 요청이 들어 오면 그럼 그냥 CouchDB를에 전달합니다.

+0

음 ... 사용자가 자격 증명을 사용하여 로그를 보낸 다음 서버 측 (Hapi)이/_session 요청을 데이터베이스 (CouchDB)로 처리합니다. 따라서 응답은 클라이언트가 아닌 서버에 제공됩니다. 그러나 실제로 쿠키를 클라이언트에 전달하고 클라이언트에서 데이터베이스로 전달하는 방법은 무엇입니까? – dps

+0

나는 hapi.js.에 대해 많이 모른다. 죄송합니다. 빠른 검색은 브라우저와 hapi.js 응용 프로그램 사이에서 쿠키를 받고 설정하는 방법에 대한 자습서입니다. http://hapijs.com/tutorials/cookies. hapi.js와 소파 사이의 쿠키 가져 오기 및 설정은 hapi 앱에서 네트워크 요청을하기 위해 무엇을 사용하고 있는지에 따라 다릅니다. – fet