51
Dev开发社区
首页
文章
问答
工具
搜索
登录
注册
#socket
Socket网络编程--聊天程序(9)
这一节应该是聊天程序的最后一节了,现在回顾我们的聊天程序,看起来还有很多功能没有实现,但是不管怎么说,都还是不错的。这一节我们将讲多服务器问题(高大上的说法就是负载问题了。)至于聊天程序的文件发送(也即二进制文件发送例如图片)和单点登陆(就是多加一个数组fd_L[],用来记录是否已经登陆过了。),这些问题就不讨论了...
代码星球
·
2020-12-28
Socket
网络编程
聊天
程序
Socket网络编程--聊天程序(8)
上一节已经完成了对用户的身份验证了,既然有了验证,那么接下来就能对不同的客户端进行区分了,所以这一节讲实现私聊功能。就是通过服务器对客户端的数据进行转发到特定的用户上, 实现私聊功能的聊天程序 实现的技术细节是:对客户端发送的数据增加一个标识头,由于我们处理的是纯文本,所以为了讲解的方便就把标识头加到聊天信息的...
代码星球
·
2020-12-28
Socket
网络编程
聊天
程序
Socket网络编程--聊天程序(7)
接上一小节,本来是计划这一节用来讲数据库的增删改查,但是在实现的过程中,出现了一点小问题,也不是技术的问题,就是在字符界面上比较不好操作。比如要注册一个帐号,就需要弄个字符界面提示,然后输入数字表示选择,在依次输入信息。(这一点,用C写过什么管理系统就知道,很是麻烦。)考虑到本程序讲的是网络编程,就不弄增删改查了,...
代码星球
·
2020-12-28
Socket
网络编程
聊天
程序
Socket网络编程--聊天程序(6)
这一小节将增加一个用户的结构体,用于保存用户的用户名和密码,然后发给服务器,然后在服务器进行判断验证。这里就有一个问题,以前讲的就是发送字符串是使用char类型进行传输,然后在服务器进行用同样是字符串进行接收。然而作为一个结构体是不是也可以呢?如果有看send或recv的函数定义就知道第二个参数是void*类型,也...
代码星球
·
2020-12-28
Socket
网络编程
聊天
程序
Socket网络编程--聊天程序(5)
上一小节我们讲了使用select来避免使用多进程的资源浪费问题。上次只是实现了从多个客户端发送数据给服务器端,接下来就要实现从服务器端发送数据给各个客户端。 使用select多路转换处理聊天程序2 client.c使用上一节用的那个,在那个基础上修改下面几句66//send-recv一些返回指没有判...
代码星球
·
2020-12-28
Socket
网络编程
聊天
程序
Socket网络编程--聊天程序(4)
上一小节讲到可以实现多客户端与服务器进行通讯,对于每一个客户端的连接请求,服务器都要分配一个进程进行处理。对于多用户连接时,服务器会受不了的,而且还很消耗资源。据说有个select函数可以用,好像还很NB的样子。 使用select多路转换处理聊天程序 下面摘取APUE14.5小结I/O多路转接当从一个描述符读,...
代码星球
·
2020-12-28
Socket
网络编程
聊天
程序
Socket网络编程--聊天程序(3)
上一小节,已经讲到可以每个人多说话,而且还没有限制,简单的来说,我们已经完成了聊天的功能了,那么接下来我们要实现什么功能呢?一个聊天程序至少应该支持一对多的通讯吧,接下来就实现多个客户端往服务器发送数据,和服务器向多个客户端发送数据。 多对一,单向,各个客户端都可以向服务器发送数据 close函数 #incl...
代码星球
·
2020-12-28
Socket
网络编程
聊天
程序
Socket网络编程--聊天程序(2)
上一节简单如何通过Socket创建一个连接,然后进行通信。只是每个人只能说一句话。而且还是必须说完才会接收到信息,总之是很不方便的事情。所以这一小节我们将对上一次的程序进行修改,修改成每个人可以多说话,主要是通过Linux下多进程fork实现的。 一对一,server和client是每个人都可以多说几句话 由于...
代码星球
·
2020-12-28
Socket
网络编程
聊天
程序
Socket网络编程--聊天程序(1)
很早的一段时间,看了APUE和UNPv1了解了网络编程,但是但是只是看而已,没有具体的实践,趁现在没有什么事做,就来实践了解一下网络编程。写博客保存下来,方便以后用到的时候可以查到。 此次的聊天程序是迭代开发的。就是一步一步的修改成不同功能的聊天程序。 服务器server和客户端client 一对一,se...
代码星球
·
2020-12-28
Socket
网络编程
聊天
程序
看完让你彻底理解 WebSocket 原理,附完整的实战代码(包含前端和后端)
最近有同学问我有没有做过在线咨询功能。同时,公司也刚好让我接手一个IM项目。所以今天抽时间记录一下最近学习的内容。本文主要剖析了WebSocket的原理,以及附上一个完整的聊天室实战Demo(包含前端和后端,代码下载链接在文末)。WebSocket协议在2008年诞生,2011年成为国际标准。现在所有浏览器都已经支持了...
代码星球
·
2020-12-27
看完
让你
彻底
理解
WebSocket
用socket方式传输Image和Sound文件
importjava.io.File;importjava.io.FileInputStream;importjava.io.IOException;importjava.io.ObjectOutputStream;importjava.net.ServerSocket;importjava.net.Socket;im...
代码星球
·
2020-12-26
socket
方式
传输
Image
Sound
socket编程---一个简单例子
服务器端代码(单线程):importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjava.io.PrintWriter;importjava.net.ServerSocket;importj...
代码星球
·
2020-12-26
socket
编程
一个
简单
例子
java.lang.Exception: Socket bind failed: [730048]
严重:Errorinitializingendpointjava.lang.Exception:Socketbindfailed:[730048]?????????×???(Э?é/???????/???)????í??atorg.apache.tomcat.util.net.AprEndpoint.init(AprE...
代码星球
·
2020-12-26
java.lang.Exception
Socket
bind
failed
730048
WebSocket断开原因、心跳机制防止自动断开连接
WebSocket断开的原因有很多,最好在WebSocket断开时,将错误打印出来。ws.onclose=function(e){console.log('websocket断开:'+e.code+''+e.reason+''+e.wasClean)console.log(e)}错误状态码:WebSocket断开时,会...
代码星球
·
2020-12-25
断开
WebSocket
原因
心跳
机制
WebSocket 原理浅析与实现简单聊天
短轮询的实现思路就是浏览器端每隔几秒钟向服务器端发送HTTP请求,服务端在收到请求后,不论是否有数据更新,都直接进行响应。在服务端响应完成,就会关闭这个TCP连接,代码实现也最简单,就是利用XHR,通过setInterval定时向后端发送请求,以获取最新的数据。setInterval(function(){fetch(...
代码星球
·
2020-12-24
WebSocket
原理
浅析
实现
简单
首页
上一页
...
7
8
9
10
11
...
下一页
尾页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他