【问题标题】:Yeoman Angular dev environment with socket.io.js and NodeJS带有 socket.io.js 和 NodeJS 的 Yeoman Angular 开发环境
【发布时间】:2013-05-02 01:43:24
【问题描述】:

我有一个使用 Yeoman 创建的 Angular 应用程序,它在开发人员中运行良好,端口为 9000。

我有一个在 3000 端口上运行的服务器端 node.js 应用程序。

我已经在 NodeJS 应用程序上安装了 socket.io。

我的 Angular 应用程序中的大部分 JS 都在 app 目录中,但 socket.io.js 是通过节点提供的:

<script src="components/angular/angular.js"></script>
<script src="components/angular-resource/angular-resource.js"></script>
<script src="components/angular-cookies/angular-cookies.js"></script>
<script src="components/angular-sanitize/angular-sanitize.js"></script>
<script src="http://localhost:3000/socket.io/socket.io.js"></script>

这对我来说有点不对劲。此外,当我加载 socket.io 并在客户端调用 connect() 时,它正在尝试连接到 localhost:9000,而不是 localhost:3000

有没有办法调和这两个世界?我是否需要从 node.js 中提供我的 Angular 应用程序?我不愿意失去实时重新加载。

【问题讨论】:

    标签: node.js angularjs socket.io yeoman


    【解决方案1】:

    你可以拥有一切!

    在你的连接调用中,确保你连接到 websocket 服务器,即

    var socket = io.connect('http://localhost:3000');
    

    从套接字服务器加载脚本很好。这没有什么问题。

    【讨论】:

    • 端口问题是由于我的 URL 中有错误的空格。一切似乎都很好,谢谢!
    猜你喜欢
    • 2018-06-04
    • 2011-01-02
    • 1970-01-01
    • 1970-01-01
    • 2015-11-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-27
    • 1970-01-01
    相关资源
    最近更新 更多