使用jQuery实现Socket客户端
摘于抄书web前端开发
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript" src="https://code.jquery.com/jquery- 3.4.0.min.js"></script>
</head>
<body>
<div id="showMessage"> </div>
<div id="addMessage">
姓名:<input type="text" name="namer" /><br>
内容:<textarea style="height:100px;width:100%" name="content"> </textarea><br>
<input type="button" id="sendmessage" value="发送">
</div>
</body>
<script type="text/javascript">
$(function() {
//连接Socket的URL地址
var wsurl = "ws://127.0.0.1:9505/socket/server.php";
var websocket; //用于存放客户端创建的Socket对象
if (window.WebSocket) {
websocket = new WebSocket(wsurl);
websocket.onopen = function(event) {
//onopen事件,连接成功
$('#showMessage').append("<p>conneted success!</p>");
}
websocket.onmessage = function(event) {
//onmessage事件,接收消息,显示在页面上
var msg = JSON.parse(event.data);
var type = msg.type;
var namer = msg.namer;
var content = msg.content;
if (type == 'usermsg') {
$('#showMessage').append("<p>" + namer + ":" + content + "</p>");
} else {
$('#showMessage').append("<p>system:" + content + "</p>");
}
}
//数据发送
function send() {
var namer = $("[name='namer']").val();
var content = $("[name='content']").val();
if (namer == '') {
alert('请输入名称');
return false;
}
if (content == '') {
alert('请输入内容');
return false;
}
var msg = {
namer: namer,
content: content
};
websocket.send(JSON.stringify(msg));
}
$("#sendmessage").bind('click', send);
}
})
</script>
</html>
1、启动服务端
命令行中
你的PHP文件
c:\>.php7\php www\socket\server.php
如果报错或者有问题
把PHP程序(学校的:C:\phpstudy_pro\Extensions\php\php7.3.4nts)添加环境变量
应该就可以了
2、打开两个网页
conneted success为成功
使用jQuery实现Socket客户端的更多相关文章
- java版简易socket客户端
android项目需要使用到心跳, 于是编写了一个简易的socket客户端程序 主要功能是给服务端发送心跳包,保持在线状态 没有使用框架,这样避免了需要引入包,直接使用的阻塞Socket通信. 主要逻 ...
- 基于Socket客户端局域网或广域网内共享同一短信猫收发短信的开发解决方案
可使同一网络(局域网或广域网)内众多客户端,共享一个短信猫设备短信服务器进行短信收发,短信服务器具备对客户端的管理功能. 下面是某市建设银行采用本短信二次开发平台时实施的系统方案图: 在该方案中,考虑 ...
- c++ socket 客户端库 socks5 客户端 RudeSocket™ Open Source C++ Socket Library
介绍 一个c++ socket 客户端库 http://www.rudeserver.com/socket/index.html The RudeSocket™ Open Source C++ Soc ...
- (转)[jQuery]使用jQuery.Validate进行客户端验证(初级篇)——不使用微软验证控件的理由
以前在做项目的时候就有个很大心病,就是微软的验证控件,虽然微软的验证控件可以帮我们完成大部分的验证,验证也很可靠上手也很容易,但是我就是觉得不爽,主要理由有以下几点: 1.拖控件太麻烦,这个是微软控件 ...
- Python socket 客户端和服务器端
connection, address = socket.accept() 调 用accept方法时,socket会时入“waiting”状态.客户请求连接时,方法建立连接并返回服务器.accept方 ...
- (转)jQuery Validation Plugin客户端表单证验插件
jQuery Validation Plugin客户端表单验证插件 官方文档:http://jqueryvalidation.org/documentation/ 官方demo:http://jque ...
- 【RL-TCPnet网络教程】第20章 RL-TCPnet之BSD Socket客户端
第20章 RL-TCPnet之BSD Socket客户端 本章节为大家讲解RL-TCPnet的BSD Socket,学习本章节前,务必要优先学习第18章的Socket基础知识.有了这些基础知 ...
- c# 创建socket客户端
c# 创建socket客户端 using System; using System.Collections.Generic; using System.Linq; using System.Text; ...
- socket 客户端和服务端通信
客户端要连接服务器:首先要知道服务器的IP地址.而服务器里有很多的应用程序,每一个应用程序对应一个端口号 所以客户端想要与服务器中的某个应用程序进行通信就必须要知道那个应用程序的所在服务器的IP地址, ...
随机推荐
- Shell-04
grep程序 Linux下文本处理三剑客-----grep sed awk sed:文本行编辑器(流编辑器) awk:报告生成器(文本输出格式化) grep:文本行过滤工 ...
- 开发 .swan 文件
这部分是每个智能小程序页面的展现模板,类似于 Web 开发中的 HTML ,SWAN 模板中使用的标签均为 SWAN 组件规定的标签. <view s-for="item in ite ...
- Leetcode 3. Longest Substring Without Repeating Characters(string 用法 水题)
3. Longest Substring Without Repeating Characters Medium Given a string, find the length of the long ...
- KNN算法之KD树
KD树算法是先对数据集进行建模,然后搜索最近邻,最后一步是预测. KD树中的K指的是样本特征的维数. 一.KD树的建立 m个样本n维特征,计算n个特征的方差,取方差最大的第k维特征作为根节点.选择第k ...
- 【CF1252G】Performance Review(线段树)
题意: n,q<=1e5,a[i],b[i][j]<=1e9,保证能力值互不相同,询问之间保留前面的影响 思路:其实把大于a[1]的看成0,小于的看成1,设第i天小于a[1]的有b[i]个 ...
- Conturbatio
Conturbatio Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total ...
- [CSP-S模拟测试]:简单的操作(二分图+图的直径)
题目描述 从前有个包含$n$个点,$m$条边,无自环和重边的无向图. 对于两个没有直接连边的点$u,v$,你可以将它们合并.具体来说,你可以删除$u,v$及所有以它们作为端点的边,然后加入一个新点$x ...
- (转)CBC模式和ECB模式解读
一 什么是CBC模式 CBC模式的全称是Cipher Block Chaining模式(密文分组链接模式),之所以叫这个名字,是因为密文分组像链条一样相互连接在一起. 在CBC模式中,首先将明文分组与 ...
- ThreadLocal在Spring事务管理中的应用
ThreadLocal是用来处理多线程并发问题的一种解决方案.ThreadLocal是的作用是提供线程的局部变量,在多线程并发环境下,提供了与其他线程隔离的局部变量.通常这样的设计的情况是因为这个局部 ...
- 使用Mybatis执行sql脚本
pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="htt ...