<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      websocket + 代理請求失敗,返回400

      場景

      業務服務提供了 websocket 服務,基于 websocket 來實現報表數據的推送,客戶在瀏覽器上查看報表,經過 http 代理將請求傳遞給后端服務。

      問題

      客戶在瀏覽器上查看報表數據時,報表功能異常,瀏覽器開發工具查看到 websocket 握手在服務端拒絕掉,返回 400 bad request。

      分析

      400 一般是由于客戶端,所以應該是客戶端請求參數或者路出現問題。通過對比正常和異常的websocket 請求報文,得到,異常的報文缺少了 Upgrade:websocket 的 http 頭部。
      Upgrade 屬于 hop-to-hop 類型的 http cache ,與 end-to-end 不同,后者在兩個客戶端請求至最終后端服務時都不會變,如 User-Agent,而前者則會在經過代理時被處理掉,需要 proxy 的能力再將這類 hop-to-hop header 處理下。

      解決方案

      nginx 有如下解決方案,在 http 請求頭里把 Upgrade 補上去,前提是在代理到后端之前的報文有 Upgrade。

      map $http_upgrade $connection_upgrade {
      default upgrade;
      '' close;
      }
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection $connection_upgrade;
      

      參考

      關于Nginx+websocket 400問題 https://www.jianshu.com/p/d5b136a27bdf
      End-to-end and Hop-by-hop Headers https://tools.ietf.org/html/rfc2616#section-13.5.1

      posted on 2018-08-31 17:34  mainred  閱讀(1547)  評論(0)    收藏  舉報

      主站蜘蛛池模板: 天天躁日日躁狠狠躁一区| 久热伊人精品国产中文| 中文在线最新版天堂| 宾馆人妻4P互换视频| 免费无码又爽又刺激网站直播| 男女激情一区二区三区| 国产美女午夜福利视频| 欧美成本人视频免费播放 | 亚洲大尺度一区二区三区| 亚洲综合色成在线观看| 99久久99这里只有免费费精品 | 天堂中文8资源在线8| 激情动态图亚洲区域激情| 99在线精品国自产拍中文字幕 | 成人午夜无人区一区二区| 国产亚洲精久久久久久久91| 午夜男女爽爽影院在线| 欧洲免费一区二区三区视频| 性奴sm虐辱暴力视频网站| 美女扒开奶罩露出奶头视频网站 | 午夜好爽好舒服免费视频| 亚洲av日韩av永久无码电影| 精品人妻午夜一区二区三区四区| аⅴ天堂中文在线网| 尤物yw193无码点击进入| 国产午夜成人无码免费看| 怀集县| 亚洲精品乱码久久观看网| 色久综合色久综合色久综合| 人妻丝袜无码专区视频网站| 华人在线亚洲欧美精品| 国产在线观看免费观看不卡| 婷婷色爱区综合五月激情韩国| 精品综合久久久久久98| 无码av人片在线观看天堂| 亚洲欧美日韩成人综合一区| 真实国产精品视频400部| 成人乱码一区二区三区四区| 国产精品大片中文字幕| 国产精品久久久久aaaa| 九九热视频在线观看一区|