自学内容网 自学内容网

Java推送xml数据进行http请求

将json转成xml数据进行推送,打印出最终推送xml的数据格式,再调整代码

直接上代码,详情请看代码注释

    public void pushReceipt(JSONObject jsonObj) {
        try {
            // 创建 XML 文档
            Document doc = createXmlDocument();
            // 构建 XML 结构
            Element rootElement = getElement(doc, "F2");
            // 设置更多属性
            Element billElement = doc.createElement("bill");
            billElement.setAttribute("id", SnowflakeIdWorker.nextStr());

            Element billHeadElement = doc.createElement("billhead");
            // 设置 billhead 下的各个子元素
            setBillHeadAttributes(billHeadElement, jsonObj);
            // 将 billhead 添加到 bill 下
            billElement.appendChild(billHeadElement);
            // 将 bill 添加到 rootElement 下
            rootElement.appendChild(billElement);
            // 将 rootElement 添加到文档中
            doc.appendChild(rootElement);
            // 将 XML 文档转换为字符串输出
            String xmlString = transformDocumentToString(doc);
            //查看此处推送的xml数据格式,然后根据代码调整你的xml数据
            log.info(xmlString);

            // 发送POST请求并接收响应
            HttpResponse response = HttpUtil.createPost(url)
                    .body(xmlString)
                    .header("Content-Type", "application/xml")
                    .header("Accept", "application/xml")
                    .execute();

            // 检查响应状态码
            int responseCode = response.getStatus();
            log.info("响应状态码 : {}", responseCode);
            // 读取响应体
            String responseBody = response.body();
            log.info("响应体 : {}", responseBody);
        } catch (Exception e) {
            log.error("请求报错:{}", e.getMessage());
            e.printStackTrace();
        }
    }

原文地址:https://blog.csdn.net/S0001100/article/details/140608453

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!