iosocket = io.connect 迷惑

原创 2013年12月08日 16:34:18

http://socket.io/#how-to-use的客户端是这么写的


CLIENT (INDEX.HTML)

<script src="/socket.io/socket.io.js"></script>
<script>
  var socket = io.connect('http://localhost');
  socket.on('news', function (data) {
    console.log(data);
    socket.emit('my other event', { my: 'data' });
  });
</script>

The client is served automatically by the Node.JS server. In your <head> tag of your HTML, include:

<script src="http://<uri:port>/socket.io/socket.io.js"></script>

If your web app and socket.io are on the same server and port, you can simply include:

<script src="/socket.io/socket.io.js"></script>

Socket.io client can also include optional version numbers, in order to maximize caching performance. You can simply include the version number within javascript filename;

<script src="/socket.io/socket.io.v0.0.1.js"></script>

If you choose to serve the client through other means, you can clone the socket.io-client repository and look at the dist/ subdirectory.







我自己用的是8888端口
"/socket.io/socket.io.js"    socket.io.js此文件在此目录不存在
正确目录为  node_modules\socket.io\lib  但改为正确目录,再运行文件进行连接时,显示上段代码中的 IO undefined 
试了网上说的在地址前面的 localhost  但同样不行
换回"/socket.io/socket.io.js" 既能正确访问
不知道为何。。。记录待解决

/************2
在浏览器访问http://localhost:8888/socket.io/socket.io.js    可以得到socket.io.js文件内容
一直认为localhost:8888应该是  server.js 的目录 ,因为index.html  同在这个目录。
但这样看好像不是。
另建一个 1/index.html访问 仍对。因此localhost:8888应该是  server.js 的目录。
但在此目录找不到 socket文件夹
看server.js文件 
有句 

res.writeHead(200, { 'Content-type': 'text/html'});
 res.end(fs.readFileSync(__dirname + '/index.html'));

.rese.writeHead方法表示,服务器端回应一个HTTP头信息;
response.end方法表示,服务器端回应的具体内容,以及回应完成后关闭本次对话。  
readFileSync是读取文件的操作       
 _dirname:指向当前运行的脚本所在的目录。

//插句--到这突然发现自己对服务器的理解有误,页面是服务器端回应才显示的,而不是主动访问的。是主动访问服务器,然后服务器回应页面

想看目录地址,因此在server.js加了一句  console.log(__dirname);  想在服务器端输出 地址
输出:
info  - socket.io started
Listening at: http://localhost:8888
F:\nodejs

地址没错。
那么F:\nodejs\socket.io\socket.io.js 在哪?

/*************
突然发现info  - socket.io started 这一句,会不会是在服务器端建立的时候同时新建了整个文件?
访问客户端页面,服务端出现以下消息:
   debug - served static content /socket.io.js
   debug - client authorized
   info  - handshake authorized nBdiU__gmVQRumBZfSAB
   debug - setting request GET /socket.io/1/websocket/nBdiU__gmVQRumBZfSAB
   debug - set heartbeat interval for client nBdiU__gmVQRumBZfSAB
   debug - client authorized for
   debug - websocket writing 1::

单词基本认识,但不太懂什么意思。。。
(authorized) ['ɔːθəraɪzd]  adj. 经授权的;经认可的
(interval)  ['ɪntəv(ə)l] n. 间隔;间距;幕间休息


回头看server.js文件,之前都在试例子,没看每句的具体含义:(看完回来再写)(随手问题:就算是服务启动才新建了一个,但如果客户端引入网络上的socket.io文件应该是可以访问,执行的,但为何同样不行,17.30吃饭去)









实时通讯之Socket.io

Socket.IO是一个WebSocket库,包括了客户端的js和服务器端的nodejs,它的目标是构建可以在不同浏览器和移动设备上使用的实时应用。...
  • wang8088498
  • wang8088498
  • 2016年08月12日 18:38
  • 7216

socket.io实践篇(1)

谈到socket.io,就不能不提一下websocket,websocket是html5的新特性之一,多少web开发者为之兴奋,websocket可以使web程序客户端和服务端之间保持长连接,可以实现...
  • jiangcs520
  • jiangcs520
  • 2013年12月13日 17:27
  • 16626

Socket.io创建连接的参数

Socket.io创建连接的参数 我不想花太多口舌向你推销Socket.io,因为我根本就不够资格,也因为根本就不需要,Socket.io目前在Websocket界中的霸主地位就好比当年的PHP~ 写...
  • taoerchun
  • taoerchun
  • 2015年09月06日 23:03
  • 7638

node.js认识学习一:socke.io.emit 方法

emit可以很方便的发送数据,例如: socket.emit('action');表示发送了一个action命令,命令是字符串的,在另一端接收时,可以这么写: socket.on('action',...
  • u013864585
  • u013864585
  • 2015年05月25日 20:39
  • 1765

socket.io入门整理

我自己在用socket.io开发,对官方网站上的文档,进行简单的整理,然后自己写了一个简单的聊天程序。最最开始 先安装socket.io: 1 npm install socket.io 利用N...
  • luyaran
  • luyaran
  • 2017年01月03日 09:40
  • 945

Socket.io创建连接的参数

Socket.io创建连接的参数 我不想花太多口舌向你推销Socket.io,因为我根本就不够资格,也因为根本就不需要,Socket.io目前在Websocket界中的霸主地位就好比当年的PHP~ ...
  • u011484382
  • u011484382
  • 2014年07月30日 15:39
  • 1043

Socket.io信息传输各种方法

服务器信息传输 // send to current request socket clientsocket.emit('message', "this is a test");// sending...
  • yinhaixiang
  • yinhaixiang
  • 2014年07月09日 10:58
  • 2505

Socket.io创建连接的参数

http://www.kazaff.me/2014/03/12/socket-io%E5%88%9B%E5%BB%BA%E8%BF%9E%E6%8E%A5%E7%9A%84%E5%8F%82%E6%9...
  • SalmonellaVaccine
  • SalmonellaVaccine
  • 2014年08月06日 07:10
  • 904

iosocket = io.connect 迷惑

http://socket.io/#how-to-use的客户端是这么写的 CLIENT (INDEX.HTML) src="/socket.io/socket.io.js"> va...
  • weederssss
  • weederssss
  • 2013年12月08日 16:34
  • 3283

socket.io的安装和使用

安装socket.io (有资料说需要先安装python2.7以上,VS2008以上才能安装成功,但官网上没有这方面提示) $ npm install socket.io Using with No...
  • baby97
  • baby97
  • 2015年10月24日 15:56
  • 8051
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iosocket = io.connect 迷惑
举报原因:
原因补充:

(最多只允许输入30个字)