2012-09-23 3 views
4

PHP로 웹 사이트를 개발 중입니다. 이제 알림 시스템을 간단히 추가하고 싶습니다. Facebook 친구 관계와 같이 상상해보십시오. 친구 요청을 받으면 알림을받습니다.PHP 기반 웹 사이트의 Node.JS 알림

물론 약간의 Node.JS와 Socket.IO를 알고 있지만, 까다로운 부분은 PHP로 구현 된 것 같습니다.

내가하지만 너무 멀리 :

1. user sends friend request 
2. in my PHP code, I cURL my Node.JS service: "/notification?friendid=9634963478" 
3. user with id 9634963478 should get a notification 

내가 직면하고 문제는 :

어떻게 Node.js를에서 동일한 자격 증명을 사용하여 "로그인"합니까? 기본적으로 나보다 다른 어떤 사용자도 메시지를받을 수 없습니까?

나는 코드를 찾는 것이 아니라 오히려 저의 일부 전문가의 "계발"을 찾고 있습니다.

답변

1

nodejs 앱에 동일한 세션 저장소 백엔드를 사용하고 쿠키를 전달하면 같은 하위 도메인에 있어야합니다 (예 : msg.example.com). 쿠키는 .example의 PHP 레이어에서 설정됩니다.

 var RedisStore = require('connect-redis')(express); 

     app.use(express.session({ 
     store: new RedisStore({ 
      host: cfg.redis.host, 
      db: cfg.redis.db 
     }), 
     secret: 'foobar' 
     })); 

사용하여 세션에 대한 비디오 : http://nodetuts.com/tutorials/13-authentication-in-express-sessions-and-route-middleware.html

+0

그래서 당신은 내가 레디 스와 PHP 측에서 세션을 처리해야한다는 것을 의미 - express.session에서 COM

봐 여기에 사용 레디 스 예입니다 게다가? –

+0

nodeapp에 PHP의 내장 세션 핸들러를 사용하게하는 방법이 있는지 나는 모른다. 세션 데이터를 redis로 저장하도록 PHP 응용 프로그램을 변환 한 다음 노드 응용 프로그램에서 동일한 저장소를 사용할 수 있습니다. http://simplapi.wordpress.com/2012/04/13/php-and-node-js-session-share-redi/ – chovy

+0

위대한, 그것이 내가 찾고 있었던 정확하게 것! 그래서 기본적으로 내가해야할 일은 PHP가 세션을 (redis를 사용하여) 처리 한 다음 Node.js로 메시지를 보낼 필요가있을 때 그들을 액세스하게하는 것입니다. –