Day01(node.js 与后台交互)

index.js

var http = require("http");
var fs = require("fs");
var ws = require("nodejs-websocket");


http.createServer(function(req,res){ //(请求对象)
    fs.readFile(__dirname+req.url,function(err,data){// (错误对象,返回对象)
        res.writeHead(200,{"content-type":'text/html;cherset=utf-8'});
        res.end(data+"");   
    })
}).listen(3000); // 3000 http服务
console.log("listen 3000...");

var wsServer = ws.createServer(function(conn){
    console.log("有人链接");
    conn.on("text",function(str){
        console.log("收到:"+str);
        broadcast("你好,"+str);
    })
})
wsServer.listen(3002); //3002 websocket服务

function broadcast(msg){
    for(var i=0;i<wsServer.connections.length;i++){
        wsServer.connections[i].sendText(msg);
    }
}

a.html

<body>
        <input type="text" id="username" />
        <button id="btn">发送</button>
        <div id="box"></div>


        <script>
            var btn = document.getElementById("btn");
            var username = document.getElementById("username");
            var box = document.getElementById("box");
            var w = new WebSocket("ws://localhost:3002");
            btn.onclick = function(){
                w.send(username.value);
            }           
            w.onmessage = function(ev){
                var temp = document.createElement("p");
                temp.innerHTML = ev.data;
                box.appendChild(temp);
            }
        </script>
</body>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 个人入门学习用笔记、不过多作为参考依据。如有错误欢迎斧正 目录 简书好像不支持锚点、复制搜索(反正也是写给我自己看...
    kirito_song阅读 2,532评论 1 37
  • 事情的起因还是因为项目需求驱动。折腾了两天,由于之前没有UIWebView与JS交互的经历,并且觉得这次在功能上有...
    CocoLeo阅读 732评论 0 3
  • 知道很多道理,却依然过不好这一生。 多么痛的领悟…… 时代在变化,互联网时代知道一个道理太容易了!能不能做到才是关...
    高鸿祥阅读 1,060评论 2 4
  • 一年的时间很短,短到你来不及思考一些的问题,弄清一些道理,浑浑噩噩忙忙碌碌中,一年就离你越来越远了。 都说毕业...
    W摄氏度阅读 400评论 5 2
  • 《庄子》解,每章一读。 文: 申徒嘉,兀者也,而与郑子产同师于伯昏无人。子产谓申徒嘉曰:“我先出则子止,子先出则我...
    千里飘蓬阅读 655评论 0 0