socket.io客户端库在哪里?

Bra*_*edd 75 client node.js socket.io

据我所知,没有解释我们在哪里找到客户端脚本socket.ioif if node.js没有用作Web服务器.我找到了一个完整的客户端文件目录,但我需要它们在组合版本中(就像使用node.js网络服务器时一样).有任何想法吗?

Mat*_*Way 171

我发现这样做的最好方法是使用凉亭.

bower install socket.io-client --save
Run Code Online (Sandbox Code Playgroud)

并在您的应用的HTML中包含以下内容:

<script src="/bower_components/socket.io-client/socket.io.js"></script>
Run Code Online (Sandbox Code Playgroud)

这样,您可以像处理任何其他托管包一样处理客户端的socket.io部分.

  • 这是最好的解决方案,谢谢!如果这有助于其他人,则缩小的socket.io客户端位于`bower_components/socket.io-client/dist/socket.io.min.js` (5认同)
  • 凉亭 <script src ="bower_components/socket.io-client/socket.io.js"> </ script> (5认同)

Ehe*_*Tov 67

socket.io.js是你要放入客户端html的东西.就像是:

<script type="text/javascript" src="socket.io.js"></script>
Run Code Online (Sandbox Code Playgroud)

我的脚本位于:

/usr/local/lib/node_modules/socket.io/node_modules/socket.io-client/dist/socket.io.js
Run Code Online (Sandbox Code Playgroud)

将该文件复制到您希望服务器为其提供服务的位置.

  • 太好了,谢谢.无法弄清楚那个文件目录结构的混乱在哪里:) (4认同)
  • 是的,这不合逻辑.很多人使用socket.io要求.祝一切顺利 :-) (4认同)
  • 谢啦!奇怪的是,在文档或样本中没有关于它的信息. (4认同)
  • https://github.com/LearnBoost/Socket.IO/wiki/How-do-I-serve-the-client &lt;script src="http://&lt;uri:port&gt;/socket.io/socket.io。 js"&gt;&lt;/脚本&gt; (2认同)

Cap*_*paj 25

我认为更好和正确的方法是从这个URL加载它

src="/socket.io/socket.io.js" 
Run Code Online (Sandbox Code Playgroud)

在socket.io运行的域上.这个解决方案的积极意义在于,如果更新socket.io npm模块,您的客户端文件也会更新,并且您不必每次手动复制它.

  • 这只是IF Node.js为您希望连接发生的网站提供服务的最佳解决方案.这是一个非常大的'IF'. (15认同)

Dav*_*dia 8

我按照Matt Way的回答中的建议使用了bower,这很有效,但是库本身没有自己的bower.json文件.

这意味着bower-main-files我用来查找依赖项的JS文件的Gulp插件没有拉入socket.io,我在页面加载时遇到错误.添加覆盖到我的项目是bower.json解决了这个问题.

首先使用bower安装库:

bower install socket.io-client --save
Run Code Online (Sandbox Code Playgroud)

然后将覆盖添加到项目的bower.json中:

"overrides": {
  "socket.io-client": {
    "main": ["socket.io.js"]
  }
}
Run Code Online (Sandbox Code Playgroud)


K. *_* D. 6

对于每个运行wiredep并获得"socket.io-client未注入您的文件"的人.错误:

像这样修改你的wiredep任务:

wiredep: {
  ..
  main: {
    ..
    overrides: {
      'socket.io-client': {
        main: 'socket.io.js'
      }
    }
  }
Run Code Online (Sandbox Code Playgroud)