JAVA 海关179公告对接完整版本!!!

本文讲述了作者在海关179公告对接过程中的困扰,包括技术文档缺失、流程不顺畅等问题,随后分享了如何导出证书、注册信息、设置服务地址以及处理海关调用的详细步骤,还推荐了一个开源项目供读者参考和交流。
摘要由CSDN通过智能技术生成

先吐槽一波海关179公告对接,偌大一个海关,但是没有完成的流程进行179海关对接,文件7788的,前后对接不上,没有完整的技术文档,不少人碰壁,感觉很无语。

接下来还是进入正题。

首先,我们会进入到一个海关的官方对接群

 但是他们只处理我们提交的审核,基本不会有问题回答,群里面有大佬可以多问问。

直接进入正题:

1,导出证书编号及文件(链接:报关工具大全

 2,去海关官网进行信息注册

 。。。图片违规了,只能放一个菜单栏

 注:(服务地址是需要填写自己的一个可供外网访问的地址,是海关需要对我们进行检测的接口,如果没有服务器可以将本地进行代理出去,后面审核的时候海关需要使用这个接口看是否能调通)

 将地址添加好之后,在群里面让官方的人进行审核,审核通过就是这个样子的一个地址,审核通过之前这个接口一定要随时能访问,不知道什么时候会对你进行审核,如果失败,就删除掉地址重新进行申请就好;

3,海关调用我们之后,会给我们发送一个消息体,这个消息体我们接收之后,将一些数据进行存储,然后对海关进行一个接收成功的响应


// 这里的地址就是刚刚配置的服务地址的路径了,一定要对
@RequestMapping(value = "/realTimeDataUpload")
    @ResponseBody
    @Transactional(rollbackFor = Exception.class)
    public Object realTimeDataUpload(HttpServletRequest request, HttpServletResponse response) {
        String openReq = request.getParameter("openReq");
        JSONObject openObj = JSONObject.parseObject(openReq);
        String orderNo = openObj.getString("orderNo");
        String sessionID = openObj.getString("sessionID");
        String serviceTime = openObj.getString("serviceTime");
        Map<String,Object> map = new HashMap<>();
        try {
            AppRealTimeDataUpload appRealTimeDataUpload = new AppRealTimeDataUpload();
            appRealTimeDataUpload.setOrderNo(orderNo);
            appRealTimeDataUpload.setSessionID(sessionID);
            appRealTimeDataUpload.setServiceTime(serviceTime);
            appRealTimeDataUploadService.insert(appRealTimeDataUpload);
            map.put("code","10000");
            map.put("message","SUCCESS");
            map.put("serviceTime",Double.parseDouble(String.valueOf(System.currentTimeMillis())));
            return JSONObject.toJSON(map);
        }catch (Exception e){
            map.put("code","20000");
            map.put("message","FAIL");
            map.put("serviceTime",Double.parseDouble(String.valueOf(System.currentTimeMillis())));
            return JSONObject.toJSON(map);
        }
    }

响应之后表示我们接收消息成功,接下来就要将海关需要检验的订单返回给海关,进行socket链接,这时候就要用到前面海关请求我们时的参数,之前存起来的,对订单数据进行加密之后,结合sessionId进行返回数据;

具体可以看一个demo,地址链接:(https://gitee.com/xiaochen991015/customs.git

里面是之前找到的一个开源项目有关179公告对接的socket代码,需要进行业务修改,亲测成功的,希望大家可以多多指教,多多交流,互相进步,感谢

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值