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

重新安wordpress网站2345浏览器

重新安wordpress网站,2345浏览器,建设局网站项目负责人资质要求,安徽省经工建设集团公司网站最近在学习go websocket的时候#xff0c;在学习实验过程遇到一个比较奇怪问题。为什么我的数据返回是blob#xff0c;而不是arrayBuffer#xff1f;百思不得其解。 直到同事打包的时候微信小游戏遇到了一个报错。FileReader不支持。 经过在社区查询#xff0c;官方答复是…最近在学习go websocket的时候在学习实验过程遇到一个比较奇怪问题。为什么我的数据返回是blob而不是arrayBuffer百思不得其解。 直到同事打包的时候微信小游戏遇到了一个报错。FileReader不支持。 经过在社区查询官方答复是支持只是arraybuffer /string。那样在coco creator 调试的时候为什么返回的是blob 而在微信的开发工作发现返回是Arraybuffer。 1.问题实验追踪 在今晚我尝试做了一个实验在结合gpt 交流发现一个问题。首选我们以这样一个小案例进行实验。监听8080的端口然后返回的时候进行打印。 !DOCTYPE html html langen headmeta charsetUTF-8titlewebSocket 返回类型问题/title /head body script typetext/javascriptconst socket new WebSocket(ws://localhost:8080);socket.onmessage (event) {if (event.data instanceof ArrayBuffer) {// 返回ArrayBuffer数据const arrayBuffer event.data;// 打印二进制数据console.log(接收的二进制数据:, arrayBuffer);}}; /script /body /html在第一次返回的时候监听这个数据返回类型是Blob。的确是Blob类型。 好进行第二次的设置修改上述的代码加入了一个属性。 socket.binaryType “arraybuffer”; 设置返回类型。 !DOCTYPE html html langen headmeta charsetUTF-8titlewebSocket 返回类型问题/title /head body script typetext/javascriptconst socket new WebSocket(ws://localhost:8080);socket.binaryType arraybuffer; //加入binaryType 指定返回类型socket.onmessage (event) {if (event.data instanceof ArrayBuffer) {// 返回ArrayBuffer数据const arrayBuffer event.data;// 打印二进制数据console.log(接收的二进制数据:, arrayBuffer);}}; /script /body /html然后再次查看返回数据结果返回的类型变化了。猜测是只要设置了就能够返回指定数据。在没有设置类型的时候默认是Blob类型。 看似简单的一个问题没有留意就突然不知道怎么解释。以下为go测试代码。通过这样快速检测数据则可以指定对应类型返回。 package mainimport (fmtgithub.com/gorilla/websocketlognet/http )var upgrader websocket.Upgrader{CheckOrigin: func(r *http.Request) bool {return true}, }func main() {http.HandleFunc(/, onMessage)err : http.ListenAndServe(:8080, nil)if err ! nil {log.Fatal(err)} }func onMessage(w http.ResponseWriter, r *http.Request) {conn, err : upgrader.Upgrade(w, r, nil)if err ! nil {fmt.Println(err)return}defer conn.Close()data : make([]byte, 2)data[0] 1data[1] 2//发送 给客户端err conn.WriteMessage(websocket.BinaryMessage, data)if err ! nil {fmt.Println(err)return} } 当h5 返回的是Blob的时候应该如何读取改造一下读取方式。采用FileReader的方式进行读取。这样就可以满足到2种类型处理了。 !DOCTYPE html html langen headmeta charsetUTF-8titlewebSocket 返回类型问题/title /head body script typetext/javascriptconst socket new WebSocket(ws://localhost:8080);//socket.binaryType arraybuffer; //加入binaryType 指定返回类型socket.onmessage (event) {if (event.data instanceof ArrayBuffer) {// 返回ArrayBuffer数据const arrayBuffer event.data;// 打印二进制数据console.log(接收的二进制数据:, arrayBuffer);}else if(event.data instanceof Blob){readBlob(event.data)}};function readBlob(blob){const reader new FileReader();reader.onload (event) {// 获取读取的结果const result event.target.result;if (result instanceof ArrayBuffer) {const arrayBuffer result;// 打印二进制数据console.log(接收的二进制数据:, arrayBuffer);} else {console.error(Failed to read Blob as ArrayBuffer.);}};reader.readAsArrayBuffer(blob);} /script /body /html同理这样可以解析到一个问题。数据返回需要设置一下就能返回指定的类型在没有指定的时候就默认是Blob。而刚碰见微信小游戏不支持FileReader引发报错而微信小游戏返回是直接ArrayBuffer。 这样就能解释并非引擎的问题。只是一个属性参数忘记设置导致的。 好了。今晚实验到此为止。
http://www.zqtcl.cn/news/607717/

相关文章:

  • 青岛手机网站建设公司房屋装修预算明细表格
  • 企业内部网站设计手机网站建设费用价格
  • 苏州高端网站建设公司建筑人才网报名平台
  • 商品网站开发需求表乐清公共
  • 省级示范校建设网站网站制作企业有哪些公司
  • 单位做网站怎么做510企业网站系统源码
  • 福建人力资源建设网站未成年在线观看视频播放免费
  • 网站站内logo怎么做朋友圈广告30元 1000次
  • 绍兴做网站北京做公司网站
  • 青浦区网站建设公司商丘网站建设费用
  • 百度网站是怎么建设的wordpress媒体主题
  • 孝感网站建设xgsh国内比百度好的搜索引擎
  • 阅读网站怎样做网站右侧固定标题怎么做
  • 网站开发多少钱农民wordpress acf破解版
  • 厦门网站建设培训云南最便宜的网站建设
  • 吉安手机网站建设html网页布局
  • wordpress英文文章格式怎样给网站做优化
  • 新网站友链网店托管公司
  • 期末作业制作网站网站上传根目录
  • 新网站不被收录的原因兰州网络seo公司
  • 男生可以做网站编辑工作吗网站域名跟谁买
  • 我市精神文明建设的门户网站做网站需要写代码
  • 新网站推广网站搜索引擎优化的步骤
  • 网站建设20推广公司网站建设推广方案
  • 如何设计酒店网站建设好的交互网站
  • 怎么把自己的网站放到百度上九亭做网站
  • 张家界旅游网站建设网页设计作品欣赏分析
  • 订阅号自定义可以做链接网站不做网站dreamwa
  • 电子商务网站规划的原则做网站的集群方案
  • 山东建设银行怎么招聘网站自己做商城网站