当前位置: 首页 > news >正文

网站诊断内容网上销售平台有哪些

网站诊断内容,网上销售平台有哪些,南昌租房网,上海建设安全协会官网使用Go快速开发TCP公共服务 文章目录 使用Go快速开发TCP公共服务一、前言二、实现思路三、源码四、测试使用五、最后 一、前言 之前使用的公共TCP服务无法使用了#xff0c;想了一下整个实现原理不是很复杂#xff0c;就利用Go快速开发了一个#xff0c;利用公网服务器可以…使用Go快速开发TCP公共服务 文章目录 使用Go快速开发TCP公共服务一、前言二、实现思路三、源码四、测试使用五、最后 一、前言 之前使用的公共TCP服务无法使用了想了一下整个实现原理不是很复杂就利用Go快速开发了一个利用公网服务器可以快速部署起来。 二、实现思路 在不考虑多用户使用数据存储的情况下总体实现思路比较简单1、tcp服务接收tcp客户端消息2、http服务端共享tcp服务端接收到的消息并通过接口方式提供给前端获取。提供给前端调用的方式参考了实时通信的服务器推送机制 EventSource(SSE) https://blog.csdn.net/DisMisPres/article/details/130539861。 三、源码 服务端程序tcp_http_server.go package mainimport (bufiofmtgopkg.in/antage/eventsource.v1lognetnet/httptime )var recvStr string// TCP Server端测试 // 处理函数 func process(conn net.Conn) {defer conn.Close() // 关闭连接for {reader : bufio.NewReader(conn)var buf [8192]byten, err : reader.Read(buf[:]) // 读取数据if err ! nil {fmt.Println(read from client failed, err: , err)break}recvStr string(buf[:n])fmt.Println(收到Client端发来的数据, recvStr)} }func main() {listen, err : net.Listen(tcp, :8027)if err ! nil {fmt.Println(Listen() failed, err: , err)return}es : eventsource.New(nil, nil)defer es.Close()http.Handle(/, http.FileServer(http.Dir(./html)))http.Handle(/events, es)go func() {for {// 每2秒发送一条当前时间消息并打印对应客户端数量if recvStr ! {es.SendEventMessage(recvStr, , )recvStr }time.Sleep(1 * time.Second)}}()log.Println(Open URL http://127.0.0.1:8016/ in your browser.)go func() {err : http.ListenAndServe(:8016, nil)if err ! nil {}}()for {conn, err : listen.Accept() // 监听客户端的连接请求if err ! nil {fmt.Println(Accept() failed, err: , err)continue}go process(conn) // 启动一个goroutine来处理客户端的连接请求} }index.html放在html目录下和go中设置的文件路径对应 !DOCTYPE html html langen headmeta charsetUTF-8titleTCP服务/titlescript typetext/javascriptwindow.addEventListener(DOMContentLoaded, function () {var evsrc new EventSource(http://127.0.0.1:8016/events);var msgEvent function (ev) {console.log(ev.data)var text ev.data;document.getElementById(log).innerText textdocument.getElementById(log).innerText \n}evsrc.onmessage msgEvent;//evsrc.addEventListener(message, msgEvent)evsrc.onerror function (ev) {console.log(readyState ev.currentTarget.readyState);}})/script /head body h1SSE test/h1 divul idlog/ul /div /body /html编译多平台适用的脚本build.bat set releasedate%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2% SET CGO_ENABLED0 SET GOARCHamd64 SET GOOSwindows go build -o ./bin/tcpHttpServer.exeSET CGO_ENABLED0 SET GOARCHamd64 SET GOOSlinux go build -o ./bin/tcpHttpServer四、测试使用 我上面的端口使用情况 tcp服务8027端口 http服务8016端口 index.html默认写死了调用接口http://127.0.0.1:8016/events 服务端启动 TCP客户端模拟发送 服务端接收到 浏览器查看 五、最后 如上为demo演示作为小工具够用了实际项目可以做更多的扩展比如多用户展示及使用历史测试数据存储及展示端口可配置hex数据收发展示通信方式扩展等等。
http://www.hkea.cn/news/14260305/

相关文章:

  • 网站的建设方面武昌做网站公司
  • 宁波网站建设设计手机企业网站
  • wordpress建站教程阿里云一级a做爰片免费观看 安全网站
  • 雄安网建 网站建设靖江网站制作多少钱
  • 网站兼容浏览器顺德乐从网站建设
  • windows2008网站wordpress 4.9.2漏洞
  • 养殖推广网站怎么做怎么让谷歌收录我的网站
  • 青海省城乡建设厅网站首页wordpress 出名主题
  • 在网站上如何做天气预报栏开发做游戏的网站
  • 网站备案需要钱吗口碑好的镇江网站建设
  • 四川建设企业网站页面设计说明万能模板
  • 通化 网站建设电脑制作软件的工具
  • 天津网站建设哪家好3d建模师可以自学吗
  • 谷歌网站关键词优化网站开发工资淄博
  • 公司网站建设接单济南网站建设方案咨询
  • 使用c#语言建设网站优点wordpress按钮灯箱
  • 国内外公司网站差异临汾哪里有做网站的
  • 儒枫网网站建设网上可以报警备案吗
  • 深圳建设网站公百度 网站速度诊断
  • 多用户商城系统网站建设湛江seo推广公司
  • 网站config配置教程手机网站翻页效果
  • 建筑建设规范网站做盗版网站引流
  • 色一把做最好网站有没有网站找人帮忙做图
  • 泰州哪里有做网站的网络公司4000-26谷歌官方网站注册
  • 怎样做视频直播网站福田深圳网站建设
  • 佳匠网站建设推广方式有哪些
  • 企业网站建设流程及费用天津做陶瓷的公司网站
  • 网站建设合同应注意什么手机页面制作代码
  • 网站建设销售简历php做网站需要注意什么
  • 技术支持 合肥网站建设网站备案表不会写