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

高端大气的科技网站模板公司网站需要备案么

高端大气的科技网站模板,公司网站需要备案么,百度网络营销推广,wordpress标签引用event stream是属于http的一种通信方式,可以实现服务器主动推送。原理于客户端请求服务器之后一直保持链接,服务端持续返回结果给客户端。相比较于websocket有如下区别: 基于http的通信方式,在各类框架的加持下不需要开发人员自己…

event stream是属于http的一种通信方式,可以实现服务器主动推送。原理于客户端请求服务器之后一直保持链接,服务端持续返回结果给客户端。相比较于websocket有如下区别:

  1. 基于http的通信方式,在各类框架的加持下不需要开发人员自己维护链接状态,而websocket一般需要开发自己维护客户端链接(一般是一个map)
  2. 也是因为基于http,客户端请求之后便处于接收状态(发送信道关闭?),所以只能接收服务端推送,而不能客户端推送,比较适合用作通知等场景。

以gin框架为例实现:

func TestEventStream(c *gin.Context) {// 声明数据格式为event streamc.Writer.Header().Set("Content-Type", "text/event-stream")c.Writer.Header().Set("Cache-Control", "no-cache")c.Writer.Header().Set("Connection", "keep-alive")// 禁用nginx缓存,防止nginx会缓存数据导致数据流是一段一段的c.Writer.Header().Set("X-Accel-Buffering", "no")w := c.Writerflusher, _ := w.(http.Flusher)flusher.Flush()// 数据chanmsgChan := make(chan string)// 错误chanerrChan := make(chan error, 1)// 开启另一个协程处理业务,通过msgChan和errChan传递信息和错误go handle(msgChan, errChan)// 读取消息for {msg, ok := <-msgChanif !ok {break}fmt.Fprintf(w, "event: message\n")fmt.Fprintf(w, "data: %s\n\n", msg)flusher.Flush()}// 检查错误for {err, ok := <-errChanif !ok {return}fmt.Println(err)fmt.Fprintf(w, "event: error\n")fmt.Fprintf(w, "data: %s\n\n", err.Error())flusher.Flush()}
}//逻辑处理,读取文件中每一行的内容返回给eventstream
func handle(msgChan chan string, errChan chan error) {defer func() {if r := recover(); r != nil {errChan <- errors.New("system panic")}close(msgChan)close(errChan)}()file, err := os.Open("temp.txt")if err != nil {errChan <- errreturn}scanner := bufio.NewScanner(file)for scanner.Scan() {msgChan <- scanner.Text()}
}
http://www.yayakq.cn/news/332262/

相关文章:

  • 我要建设一个网站大良营销网站建设服务
  • 岑溪网站开发工作室兰州企业网站建设公司价格
  • 公司以前做的免费网站太多_新网站搜索不到甘肃做网站价格
  • 购物网站常用的多组图左右轮播的js图片特效代码河北省保定市唐县城乡建设网站
  • 学校网站建设要点深圳做网站公司有哪些企业
  • 企业微信下载临清聊城网站优化
  • 公司网站维护分工wordpress!资源
  • 蓝色网站后台济宁网站建设吊装
  • 府网站建设运维情况自查报告网站开发三个月能学会吗
  • 做网站需完成的软件做个中英文网站多少钱
  • 自己做网站下载怎么apmserv搭建多个网站
  • 潍坊网站建设中公wordpress支持多站点
  • 怎么用文件传输协议登录网站怎么做网站封面上的图
  • 高密公司做网站我的世界充值网站怎么做
  • 哪些网站可以接生意做云开发工程师
  • 临沂市建设局网站公示360收录提交入口
  • 苏州市做网站网站推荐2021
  • 密云网站制作案例重庆建设行业网站
  • xx旅行社网站建设方案 企网站技术解决方案为申请虚拟主机企业建设网站的目的
  • 公司企业网站搭建天津网站制作重点
  • 梅县区住房和城乡规划建设局官方网站哪些网站可以做h5
  • 深圳团购网站建设广西建设工程质量检测协会网站
  • 网站后台生成html镇江网站优化公司工作室
  • 网站和管理系统的区别wordpress支付可见公众号收款
  • 怎样做优惠券网站最有效的app推广方式有哪些
  • 博客页面html模板常德百度seo
  • 网站 如何备案深圳定制鞋垫
  • 深圳网站制作运营做好评做销量的网站
  • 湖州住房和城乡建设局网站自己建商城型网站
  • php网站有点直播营销的优势有哪些