node.js - 关于nodeJS的澄清
问题描述
我刚刚开始学习 nodeJS,并且还在学习 socket.io 基本聊天教程。我有问题,我敢肯定他们听起来很无知,但我真的很想了解他们:
1)nodeJS“监听”localhost:8080
例如。但是假设我希望 socket.io 聊天位于特定页面上:localhost/chat.html
,我如何使该聊天系统工作localhost/chat.html
,而不是localhost:8080
(以便用户单击“chat.html”链接并且聊天服务器启动仅在该页面中时)
2)对于聊天,我想只允许注册并登录的用户能够查看该 localhost/chat.html 页面。使用 PHP,我将简单地检查会话是否设置为使用isset $_SESSION
并从该会话中获取用户的 ID,如何使用 nodeJS 文件让 PHP 启动会话?
解决方案
如何使该聊天系统在 localhost/chat.html 上运行,而不是在 localhost:8080 上运行
HTTP 的默认端口是80
. http://localhost/
暗示http://localhost:80/
。如果你愿意,你可以让 Node.js 在 port 上监听80
。
(以便用户单击“chat.html”链接,聊天服务器仅在该页面中启动)
好吧,这部分问题是无稽之谈。服务器需要运行,以便在请求进入时可以接收请求。
使用 PHP,我将简单地检查是否使用 isset $_SESSION 设置了会话并从该会话中获取用户的 ID,如何使用 nodeJS 文件让 PHP 启动会话?
PHP 会话通常通过 cookie 工作。您也可以在 Node.js 应用程序中使用 cookie。为了让您自己更轻松,请考虑安装 Express,以及作为模块插入其中的众多会话数据处理程序之一。
推荐阅读
- sql - 具有顺序演算的 LAG 函数
- focus - SDL实现鼠标悬停透明控件在linux Xlib下不生成事件
- terminal - LC-CTYPE:无法更改语言环境:没有这样的文件或目录
- html - html标签的随机背景颜色
- kubernetes - 如何不以 root 身份将 vscode 附加到正在运行的 k8s pod
- mysql - MYSQL - Max(Date) 给了我正确的日期但错误的值
- angular - 测试无法识别在 ngOnInit 中调用的服务
- r - 在 rbookdown 的图 ref 标题中嵌入 https 链接
- docker - AddOpenIdConnect options.Authority 被代理后面的当前主机覆盖 (UseForwardedHeaders)
- c# - 同一实体被跟踪为不同的弱实体类型