• feign远程调用问题


    1.问题描述:feign远程调用,需要给调用方传递header中的参数

    处理:调用方法的传参中传递header的参数,并加注解 @RequestHeader

    @PostMapping("/not-auth/ssoLogin/getAppTokenBySso")
    RestfulEntityBySummit<SsoLoginResponse> ssoLoginAPP(@RequestBody EncryptedStringReq encryptedString,@RequestHeader(name = "mac-address",required = true) String macAddress);

    参考链接:https://blog.csdn.net/lidai352710967/article/details/88680173?utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.vipsorttest&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.vipsorttest

    2.问题描述:feign远程调用,非200请求,业务返回具体的异常信息

    处理:使用 feign.Response接受远程调用反参(尽量不使用fallback和ErrorDecoder的实现类

    @RequestMapping(method = RequestMethod.POST, value = "/oauth/token", headers = {"Content-Type: multipart/form-data"})
    feign.Response postAccessToken1 (@RequestBody MultiValueMap<String, String> map);

    请求非200的话,feign会拦截请求,response的body为空,可将异常消息的提示码返回到headers中

    如果请求正常:使用:String str = Util.toString(feignRes.body().asReader()); 获取响应消息内容

     参考链接:(仅参考,过于繁琐,建议feign.Response更香)

    https://www.liangzl.com/get-article-detail-33735.html    

    https://blog.csdn.net/sun_shaoping/article/details/82079287

     

  • 相关阅读:
    Oracle中的rownum
    关于Oracle12c中无scott用户的问题
    docker 1.13 是什么版本?
    ImportError: cannot import name 'SQLALchemy'
    mac配置iterm2,iterm2使用方法
    docker 时区
    jupyter 500 : Internal Server Error
    sublime conda 切换环境
    mac frida安装(使用网易木木模拟器)
    \u开头两个字符的是什么编码?
  • 原文地址:https://www.cnblogs.com/weixy3/p/14744690.html
Copyright © 2020-2023  润新知