阿里奇门对接-自定义接口(服务端)

背景

        其他系统需要通过阿里奇门调用公司自研erp系统的接口进行数据的同步,此时erp系统作为服务端需要在阿里奇门平台上配置对应的api信息。erp接口中除了实现自己的逻辑外还需完成验签逻辑,否则发布时会提示失败

简单的图示如下

奇门文档

开放平台-文档中心

验签逻辑 (来源于奇门文档中)

CheckResult result = SpiUtils.checkSign(request, targetAppSecret);? //这里执行验签逻辑
if(!result.isSuccess()) {  //如果验签失败则需要返回 验签失败的结果,并且需要和配置对应的上,系统才认为是验签成功
   HttpSampleResponse httpSampleResponse = new HttpSampleResponse();
   httpSampleResponse.setErrorMessage("Illegal request");
   httpSampleResponse.setErrorCode("sign-check-failure");
   httpSampleResponse.setFlag("failure);
   //return
}

接口实现部分

@Controller
@RequestMapping("/api/qimen")
public class AliqmController {

    @RequestMapping(value = "/demo")
    @ResponseBody
    public Map<String,Object> demo(HttpServletRequest request) {

        Map<String,Object> res = new HashMap<>();
        CheckResult result = null;
        try {
            result = SpiUtils.checkSign(request, "申请应用成功后的AppSecret");
            if(!result.isSuccess()) {  //如果验签失败则需要返回 验签失败的结果,并且需要和配置对应的上,系统才认为是验签成功
                //以下三个返回字段以及内容固定返回,api在奇门上发布验签时需要用到,否则会发布失败
                res.put("sub_code","sign-check-failure");
                res.put("sub_message","Illegal request");
                res.put("flag","failure");
                return res;
            }
        }catch (Exception e){
            res.put("sub_code","sign-check-failure");
            res.put("sub_message","Illegal request");
            res.put("flag","failure");
            return res;
        }

        //result.getRequestBody() --获取奇门配置的请求body
        /*逻辑实现*/
        
        res.put("sub_code","0");
        res.put("sub_message","success");
        res.put("flag","success");
        return res;
    }

} 

AppSecret

奇门配置API-自测

(官方文档很详细)

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值