当前位置: 首页 > news >正文

金蝶插件调用HTTP请求 并解析JSON

返回数据如下:

{
    "mainTable": {
        "create_time": "2023-01-03",
        "RECORD_DATE": "2023-01-03",
        "id": "6",
        "ASSEMBLY_ITEM": "",
        "ASSEMBLY_SN": "0955D"
    },
    "detail1": [{
            "COMPONENT_NUMBER": "1",
            "COMPONENT_ITEM": "",
            "COMPONENT_TYPE": "III",
            "id": "37",
            "CORE_PARTS_SN": "***312**"
        }, {
            "COMPONENT_NUMBER": "2",
            "COMPONENT_ITEM": "",
            "COMPONENT_TYPE": "主机",
            "id": "38",
            "CORE_PARTS_SN": "*****1250902****"
        }
    ]
}
 

 代码:

//using Kingdee.BOS.Core.Metadata.Util;
//using Kingdee.BOS.JSON;
//using Kingdee.BOS.Util;
using Kingdee.BOS.JSON;
using Kingdee.BOS.WebApi.Client;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;namespace cux.button.test
{public class TestHttp{public   void test(){   String data= "datajson={\"operationinfo\":{\"operator\":\"1\"},\"mainTable\":{\"ASSEMBLY_SN\":\"DIO:00.02.N1.0955DOM:IDB10-C910-CTYP:BJ4259SNFKB-XJ(RPZ)PD:2023-1-3 18:50:37NO.:1/1\"},\"pageInfo\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"header\":{\"systemid\":\"wq\",\"currentDateTime\":\"20240726135047\",\"Md5\":\"746AAF020BE2BBF8D44BFEBD31A4069B\"}}";String serviceUrl = String.Format("{0}/{1}", "http://IP地址", "api/cube/restful/interface/getDataByPK/getTraceInfoByAssemblySn");HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(serviceUrl);byte[] buf = System.Text.Encoding.GetEncoding("UTF-8").GetBytes(data);myRequest.Method = "POST";myRequest.ContentLength = buf.Length;//myRequest.ContentType="application/json";myRequest.ContentType = "application/x-www-form-urlencoded";myRequest.MaximumAutomaticRedirections = 1;myRequest.AllowAutoRedirect = true;//发送请求Stream stream= myRequest.GetRequestStream();stream.Write(buf, 0, buf.Length);stream.Close();//获取接口返回值//通过WEB访问对象获取响应内容HttpWebResponse myResponse= (HttpWebResponse)myRequest.GetResponse();//通过响应内容流创建StreamReader对象,因为StreamReader更高级更快StreamReader reader=new StreamReader(myResponse.GetResponseStream(),Encoding.UTF8 );String returnXml= reader.ReadToEnd(); //利用StreamReader就可以从响应内容从头读到尾JSONObject jo= JSONObject.Parse( returnXml );String returnJsonContent    = jo["result"].ToString();jo = JSONObject.Parse(returnJsonContent);JSONObject mainTableJson= JSONObject.Parse(jo["mainTable"].ToString());String id= mainTableJson["id"].ToString();String itemNum = mainTableJson["ASSEMBLY_ITEM"].ToString();JSONArray detailJArrays = (JSONArray)jo["detail1"];foreach (JSONObject detail in detailJArrays) { string componentNumber = detail["COMPONENT_NUMBER"].ToString();string comSn = detail["CORE_PARTS_SN"].ToString();  Console.WriteLine("COMPONENT_NUMBER: COMPONENT_NUMBER = {0}, Type = {1}", componentNumber, comSn);}reader.Close();myResponse.Close();}}
}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • RabbitMQ普通集群搭建指南
  • 【React】JSX:从基础语法到高级用法的深入解析
  • 【云原生】Docker搭建知识库文档协作平台Confluence
  • Vue入门记录(一)
  • XSSFWorkbook 和 SXSSFWorkbook 的区别
  • Torchvision.dataset CIFAR等数据集使用
  • vue 给特定满足条件的表单数据添加背景颜色,组件的 row-class-name
  • 使用puma部署ruby on rails的记录
  • 物联网主机 E6000:智慧应急领域的创新力量
  • html-docx-js和file-saver实现html导出word
  • vue3前端开发-小兔鲜项目-登录组件的开发表单验证
  • Android WebViewClient 的 `shouldOverrideUrlLoading` 方法
  • 学习在测试时学习(Learning at Test Time): 具有表达性隐藏状态的循环神经网络(RNNs)
  • Linux中tomcat下载教程
  • 国产系统银河麒麟SP10桌面版安装nvidia 4060TI驱动
  • 【Leetcode】104. 二叉树的最大深度
  • CSS 提示工具(Tooltip)
  • ES6 ...操作符
  • JavaScript工作原理(五):深入了解WebSockets,HTTP/2和SSE,以及如何选择
  • laravel with 查询列表限制条数
  • Stream流与Lambda表达式(三) 静态工厂类Collectors
  • Terraform入门 - 3. 变更基础设施
  • Vue实战(四)登录/注册页的实现
  • WinRAR存在严重的安全漏洞影响5亿用户
  • 从零开始在ubuntu上搭建node开发环境
  • 关于Java中分层中遇到的一些问题
  • 湖南卫视:中国白领因网络偷菜成当代最寂寞的人?
  • 如何借助 NoSQL 提高 JPA 应用性能
  • 系统认识JavaScript正则表达式
  • Nginx实现动静分离
  • Python 之网络式编程
  • 教程:使用iPhone相机和openCV来完成3D重建(第一部分) ...
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • 整理一些计算机基础知识!
  • ​一些不规范的GTID使用场景
  • (1)Nginx简介和安装教程
  • (2)关于RabbitMq 的 Topic Exchange 主题交换机
  • (Matlab)使用竞争神经网络实现数据聚类
  • (附源码)计算机毕业设计ssm本地美食推荐平台
  • (十一)图像的罗伯特梯度锐化
  • (文章复现)基于主从博弈的售电商多元零售套餐设计与多级市场购电策略
  • ./configure,make,make install的作用
  • .Net 应用中使用dot trace进行性能诊断
  • .NET周刊【7月第4期 2024-07-28】
  • /etc/fstab 只读无法修改的解决办法
  • @ConditionalOnProperty注解使用说明
  • @GlobalLock注解作用与原理解析
  • @property括号内属性讲解
  • [20171101]rman to destination.txt
  • [240903] Qwen2-VL: 更清晰地看世界 | Elasticsearch 再次拥抱开源!
  • [AIGC] Java List接口详解
  • [bzoj1006]: [HNOI2008]神奇的国度(最大势算法)
  • [C#]winform使用引导APSF和梯度自适应卷积增强夜间雾图像的可见性算法实现夜间雾霾图像的可见度增强
  • [C#]无法获取源 https://api.nuge t.org/v3-index存储签名信息解决方法
  • [C++数据结构之看懂就这一篇]图(上)