Tags:

สงสัยเรื่องการทำ push

พอดีผมทำ push ไปให้ user โดยใช้ cronjob เช็คไปที่ class task ตัวนึงที่ผมเขียนไว้ แล้ว emit กลับไปให้ผู้ใช้ ด้วย Elephant.io (ตัวนี้เป็นคำสั่ง emit โดยใช้ PHP ผมใช้ node.js + socket.io)

ซึ่งกระบวนการทำงานจะเป็น

ผู้ใช้ -> เพิ่มข้อมูลบางอย่าง -> cronjob ทำงาน -> emit -> notifications.js (เขียนด้วย node.js + socket.io) -> ส่งกลับไปหาผู้ใช้

ปัญหาอยู่ระหว่าง ตอน cronjob ทำงาน มันไม่ได้รู้หรอกว่าผู้ใช้คนไหนเรียกมา ตรงนี้แหละ เราจะ emit กลับไปให้ผู้ใช้คนนั้นๆ ได้ยังไง

ตอนนี้ใช้การเข้ารหัส token key ของแต่ละคนส่งไป แล้วเทียบค่า token key จากการเข้ารหัสของฝั่งผู้ใช้กับฝั่ง cronjob
ไม่รู้ถูกตามหลักการเขียน node.js รึปล่าว เพราะตัวอย่างมันไม่ค่อยมีแบบนี้เท่าไหร่

Get latest news from Blognone
By: bluezip
AndroidUbuntuWindows
on 24 June 2015 - 12:49 #821971

ของผมเขียนโดยใช้ node.js ทั้งหมดเลย โดยเมื่อบันทึกข้อมูลเสร็จ ก็ส่ง socket ออกไปเลยในทันที after save
ตัว socket.io เองก็สามารถสร้าง group ได้ คนเดียวก็อยู่ใน group ได้

token ใช้การเข้ารหัส ถอดรหัสได้ที่ฝั่ง server ได้เท่านั้น
token ใช้แทน cookie เพราะ cookie มัน cross domain cross application ไม่ได้

วิธี auth ของ socket ก็สามารถใช้ token ได้