码迷,mamicode.com
首页 > Web开发 > 详细

[x-webkit-deflate-frame] is not supported]

时间:2017-03-08 01:19:50      阅读:240      评论:0      收藏:0      [点我收藏+]

标签:websocket

     大家在写websocket服务端的时候可能会碰到一个问题,我以spring-websocket为例子,用blue-zero.com做在线测试,Firefox和chrom连接成功,但是苹果的Safari或者用一些C++导出的工具包来连接测试确报一个服务端异常:The extension [x-webkit-deflate-frame] is not supported] with root case.


    原因是旧版本的浏览器或者三方工具利用了比较旧的非规范扩展“x-webkit-deflate-frame”,而最新的浏览器发送的是websocket草案中规范的“permessage-deflate”,所以解决方法可以是:在创建连接前,更改头部信息:

     

  1. /** 在拦截器内强行修改websocket协议,将部分浏览器不支持的 x-webkit-deflate-frame 扩展修改成 permessage-deflate */  

  2.         if(request.getHeaders().containsKey("Sec-WebSocket-Extensions")){  

  3.             request.getHeaders().set("Sec-WebSocket-Extensions""permessage-deflate");  

  4.         } 


本文出自 “12581171” 博客,请务必保留此出处http://12591171.blog.51cto.com/12581171/1904134

[x-webkit-deflate-frame] is not supported]

标签:websocket

原文地址:http://12591171.blog.51cto.com/12581171/1904134

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!