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

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

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

      feign響應Image流對象

      feign面向方法簽名的http調用,越來越受歡迎,類型于rpc的thrift,只需要關注方法簽名和返回值即可,當然feign響應流對象時,需要我們做一下特殊處理,否則會出現異常。也有一些文章通過重寫HttpMessageConvert來實現,但我測試后發現還是失敗的。
      > Accept: image/*會返回406 Not Acceptable

      ### 解決方法
      feign代碼,注意返回值必須是`feign.Response`
      ```
        @PostMapping(value = "/wxa/getwxacodeunlimit")
        feign.Response getQrImagePath(@RequestParam("access_token") String accessToken,@RequestBody Map<String, Object> body);

        class WeixinClientFallback implements WeixinClient {
      ```
      restcontroller代碼,需要顯示聲明`produces`類型,這里因為是圖片,所以聲明為`MediaType.IMAGE_JPEG_VALUE`
      ```
       @GetMapping(value = "/v1/api/sales/qrcode", produces = MediaType.IMAGE_JPEG_VALUE)
        public void qrcode(HttpServletResponse response) {
          //獲取token
          Map<String, Object> tokenMap = weixinClient.getToken("client_credential", wxAppId, wxAppSecret);
          if (tokenMap == null) {
            throw Exceptions.paramError("獲取token失敗");
          }
          if (tokenMap.containsKey("errcode")) {
            throw Exceptions.paramError(MapUtils.getString(tokenMap, "errmsg"));
          }
          String scene = String.format("salesPersonId=%s&agencyId=%s",
              TokenContext.getToken().getUserId(),
              TokenContext.getToken().getCompanyId());
          String token = MapUtils.getString(tokenMap, "access_token");
          Map<String, Object> requestParams = new HashMap<>();
          requestParams.put("scene", scene);
          requestParams.put("page", weixinPage);
          feign.Response imgReponse = weixinClient.getQrImagePath(token, requestParams);
          if (imgReponse == null) {
            throw Exceptions.paramError("獲取二維碼失敗");
          }
          try (InputStream inputStream = imgReponse.body().asInputStream();
               ServletOutputStream outputStream = response.getOutputStream()) {
            response.setContentType("image/png");
            outputStream.write(IOUtils.toByteArray(inputStream));
          } catch (RuntimeException e) {
            throw Exceptions.paramError("獲取二維碼失敗");
          } catch (Exception ex) {
            throw Exceptions.paramError("獲取二維碼失敗");
          }
        }
      ```

      posted @ 2019-08-05 19:23  張占嶺  閱讀(1788)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 717午夜伦伦电影理论片| 国产精品国产精品无卡区| 中文字幕乱码熟妇五十中出| 亚洲旡码欧美大片| 黄网站色视频免费观看| 日韩av不卡一区二区在线 | 亚洲av天堂综合网久久| 国产精品一区二区三区黄| 成人拍拍拍无遮挡免费视频| 内射视频福利在线观看| 亚洲第一精品一二三区| 推油少妇久久99久久99久久| 国产伦子沙发午休系列资源曝光| 国产精品国产自产拍高清| 日韩中文字幕高清有码| 国产午夜精品理论大片| 亚洲精品国偷自产在线| 少妇久久久被弄到高潮| 国产精品亚洲二区亚瑟| 真实国产乱子伦视频| 婷婷四房播播| 色综合久久中文综合网| 日本中文一二区有码在线| 亚洲欧洲精品日韩av| 平谷区| 丝袜a∨在线一区二区三区不卡| 正在播放的国产A一片| 嫩江县| 性色在线视频精品| 日产无人区一线二码三码2021| 少妇又爽又刺激视频| 熟女女同亚洲女同中文字幕| 亚洲三级香港三级久久| 日本九州不卡久久精品一区| 成人免费AA片在线观看| 青青草无码免费一二三区| 东京热高清无码精品| 大桥未久亚洲无av码在线| 正在播放肥臀熟妇在线视频| 国内偷自第一区二区三区| 久久国产乱子伦免费精品无码|