【问题标题】:Node.js (mysql+socket.io) Authentication PHP via Cookie?Node.js(mysql + socket.io)通过Cookie认证PHP?
【发布时间】:2012-09-26 10:13:32
【问题描述】:

我目前正在将 node.js 与 socket.io 与我的 PHP 框架集成

当用户登录我的网站时,我将他/她的会话保存在我的数据库中并为他分配一个用户 ID。

我能够验证对 node.js 的请求是否有效的唯一方法, 是将**cookie(会话ID)和用户ID发送到node.js并检查 数据库,如果会话 ID 有效且用户 ID 属于此 会话 ID。这发生在 node.js mysql 模块中。

这是唯一的方法吗?它“安全”吗?

【问题讨论】:

  • 这仅用于实时获取通知。

标签: php javascript node.js authentication session-cookies


【解决方案1】:

根据您使用 Node.js 服务器和 sockets.io 的用途,您可以在服务器上维护一组登录用户。

当用户验证您的 PHP 时,您将客户端代码中的套接字事件发送到带有会话 ID 的套接字服务器,然后将该会话 ID 存储在 Node.js 服务器上的关联用户数组中,这样您可以将任何用户会话 ID 关联到您用来维持客户端和服务器之间通信的套接字。

从现在开始,您可以检查与 Node.js 服务器的任何通信,只需通过客户端代码传递会话 ID 并检查它是否包含在关联数组中。

当然,当从 socket.io 触发断开连接事件时,您会删除数组上的关联条目。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-15
    • 1970-01-01
    • 1970-01-01
    • 2016-01-23
    • 2021-03-30
    • 2022-12-02
    • 1970-01-01
    相关资源
    最近更新 更多