用友U8接口-部署和简要说明(1)

news2024/12/28 21:55:05

概括

  1. 本专栏文章目的说明
  2. 对目前用友U8ERP接口介绍
  3. 对底层接口二次封装的介绍

说明

  1. 过去发布过介绍U8接口文章简介,参考以下链接。
    U8接口开发方式

  2. 本专栏文章与下面的HTTP接口相辅相成,主要是写给正在使用,或未来使用本套接口的开发人员,参考以下链接。
    U8标准接口

  3. U8ERP本身就有接口,为什么需要重新封装一次?
    在以前项目中,我们尝试使用写数据库方式与U8交互,随之而来的是各种问题,如库存不对,上下游不关联,某些数据没写正确等等!而使用openapi又得需要向客户解析额外开发费用,单据不能上下游关联等等问题!自带的api也是遇到各种问题,让我们这些开发苦不堪言。因此我们使用NetWebAPI+JSON方式,对底层接口进行了重新封装,称之为U8StdApi或U8HttpApi
    调用自带的API经常遇到问题:
    api错误

  4. 过去由于接口整合耗时和自身繁忙,一直没能抽空写这套接口说明文章。这也导致了许多使用本套接口的开发人员,不能够很快上手测试,因此在今年我们将持续发布专栏文章,对本套接口的使用进行详细说明。

接口种类

图示

  1. 底层接口使用xml交互,如eai&api推荐xml
  2. openapi官网则使用json+本地客户端调用
  3. 本套接口(u8stdapi),使用NetWebAPI+JSON。此外我们可以通过自定义接口方式,对ERP进行数据库操作
    U8接口调用

U8Http接口

封装形式

  1. 底层接口使用xml交互,当初我们曾打算使用webservice+xml来做二次封装接口。但考虑到未来对接MES OA 钉钉 PDA 等外部系统和设备,所以决定使用NetWebApi+JSON+HTTP方式,通过前台传入的JSON数据进行校验、默认参数不需要外部传入,转换为xml传入底层接口。
  2. NetWebApi+JSON+HTTP方式我们认为主要好处有二
    一:JSON格式比xml更简洁明了
    二:HTTP比webservice更加适合对接第三方系统

优势

  1. 无需额外费用、纯内网调用无毒可控,便于接口二开
  2. 无需替换服务器文件、动态调用,不替换服务器dll文件,适配多版本ERP
  3. 无需再次封装,基本参数已封装,调用简单

收费

  1. 开发不易,整套接口免费试用两个月,费用不足openapi三分之一
  2. 可自由挑选接口

部署

参考此链接U8StdApi进行接口部署。本套接口仅依赖Redis和Net,16.0-18.0使用Net4.8,其余版本需要Net4.6
接口部署

调用

  1. 输入U8登录相关信息,获取访问令牌,访问令牌存储在Redis中
    在这里插入图片描述
  2. 将token放入请求头即可调用其他接口
    请求头

总结

  1. 本文简单回顾了与U8ERP交互的接口方式
  2. 介绍了为什么重新封装了一次HTTP接口
  3. 下篇文章主要讲述调用本套接口较好的方式

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1418288.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Harmony的自定义组件和Page的数据同步

在开发过程中会经常使用自定义组件,就会遇到一个问题,在页面中引入组件后,如何把改变的值传递到自定义组件中呢,这就用到了装饰器,在这是单向传递的,用的装饰器是@State和@Prop @State在page页面中监听数据的变化 @Prop在自定义组件中监听page页面传递过来的变化值,并赋…

关于开展人工智能从业人员“计算机视觉处理设计开发工程师”专项培训(第二期)的通知!

近日我们刚刚结束了《计算机视觉处理设计开发工程师》证书第一期培训,培训效果良好,所有学员均通过工信部统一线上考试,坐等证书了。鉴于学员们的反应我们第二期课程如约而至。 证书出台背景:为进一步贯彻落实中共中央印发《关于深…

VMware中CentOS 7解决网络问题

问题描述 在 VMware 中使用 CentOS 7 中使用 ping www.baidu.com 测试网络是否能正常连接。 出现了未知的名称和服务的问题: 解决方案一 在服务中检查 VMware NAT Service 是否开启 解决方案二 在控制面板中的网络适配器里检查 解决方案三 检查VMware中的网络适…

DAY10_SpringBoot—SpringMVC重定向和转发RestFul风格JSON格式SSM框架整合Ajax-JQuery

目录 1 SpringMVC1.1 重定向和转发1.1.1 转发1.1.2 重定向1.1.3 转发练习1.1.4 重定向练习1.1.5 重定向/转发特点1.1.6 重定向/转发意义 1.2 RestFul风格1.2.1 RestFul入门案例1.2.2 简化业务调用 1.3 JSON1.3.1 JSON介绍1.3.2 JSON格式1.3.2.1 Object格式1.3.2.2 Array格式1.3…

Python第十二章(函数2)

一。变量作用域: 1.局部变量:定义于函数内部,生效在函数,外部不生效 作用:临时保存数据,当函数调用完毕后,则摧毁局部变量 2.全局变量:定义于函数体外面,在函数体外面…

实现元素进入界面的平滑效果

先看效果: 实现思路:获取页面中需要加载动画的节点,用元素的animate()方法创建一个动画对象,并传入两个关键帧,接着使用IntersectionObserverAPI创建观察对象,用于观察元素进入页面。当元素进入界面时&…

sqli.labs靶场(第18~22关)

18、第十八关 经过测试发现User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:122.0) Gecko/20100101 Firefox/122.0加引号报错 这里我们闭合一下试试 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:122.0) Gecko/20100101 Firefox/122.0,127.0.0.1,adm…

漏洞原理linux操作系统的SqlMap工具的使用

漏洞原理linux操作系统的SqlMap工具的使用 Linux操作系统基础操作链接: 1024一篇通俗易懂的liunx命令操作总结(第十课)-CSDN博客 kali的IP地址:192.168.56.1 实操 # kali中使用sqlmap http://192.168.56.1/ sqlmap -u http://192.168.56.1/news/show.php?id46 sqlmap -u …

线程锁多线程的复习

线程 实现方式3种乐观锁&悲观锁线程池线程池总结 进程:是正在运行的程序 线程:是进程中的单个顺序控制流,是一条执行路径 实现方式3种 1.Thread //步骤一:定义一个继承Thread的类 //步骤二:再定义的类中重写run()方法 //步骤三:创建定义类对象 //步骤四:启动线程 class M…

轮廓测长|轮廓仪高精度测量粗糙度

现代工业制造领域中,为什么测量粗糙度至关重要?在现代工业制造领域中,测量粗糙度是一项非常重要的工作。因为粗糙度能够影响到工件的功能性能和外观质量。当我们制造机器零件或工具时,需要确保表面的光洁度能够满足设计要求。过高…

iOS 自动打包 命令之如何获取PROVISIONING_PROFILE

获取描述文件UUID: 首先在Finder中前往/Users/用户名/Library/MobileDevice/Provisioning Profiles路径 然后在Provisioning Profiles文件夹中选择打包需要的描述文件,一般描述文件的文件名都是由UUID组成的,如果文件名不是由UUID组成的&…

STM32入门教程-2023版【5-1】EXTI外部中断

关注 点赞 不错过精彩内容 大家好,我是硬核王同学,最近在做免费的嵌入式知识分享,帮助对嵌入式感兴趣的同学学习嵌入式、做项目、找工作! 本节主要讲的是,中断系统和外部中断,依靠外部中断来学习中断系统 中断系统&…

idea docker 内网应用实践

文章目录 前言一、服务器端1.1 离线安装docker1.2 开启docker远程访问1.3 制作对应jdk镜像1.3.1 下载jdk171.3.2 Dockerfile 制作jdk17镜像1.3.3 镜像导出1.3.4 服务器引入镜像 二、Idea 配置2.1 Dockerfile2.2 pom 引入docker插件2.3 idea docker插件配置2.4 打包镜像上传2.5 …

基于logisim的MIPS单周期硬布线24条指令CPU

目录 1 前言 2 思路分享 2.1 下载资源 2.2 观看视频 2.3 连接相关电路 2.4 撰写报告 2.5 答辩准备 3 云盘链接 1 前言 该项目为本人大三上学期的实训成果,在实训过程中,纯靠自己摸索,因此迷茫了一段时间。为了不让后来的同学重蹈覆辙…

快速入门JavaScript基础

JavaScript认知 序言 JavaScript发展历史(JS) 简称JS 1.Netscape(网景) 公司的这种浏览器脚本语言,最初名字叫做 Mocha2.1995年9月改为 LiveScript3.1995年12月,Netscape 公司与 Sun 公司(Java 语言的发明者和所有者)达成协议&am…

Layui + Echarts 5.0

Layui 怎么整合最新版本的 Echarts 5.0,Echarts 4 升级到 5后,有了很大改变,新的配置项4是无法兼容的,所以想要使用新的功能,都需要升级! 新建一个echarts.js文件 layui.define(function (exports) {// 这…

C#,广义斐波那契数(Generalised Fibonacci Numbers)的算法

广义斐波那契序列(generalized Fibonacci sequence)是斐波那契数的推广。由递推关系F₁F₂…Fm-10,Fₘ1,FmnFₙFn1…Fnm1,n≥1所产生的序列,称为m级广义斐波那契序列。 计算结果: 源代码: 1 文本格式 …

AF647 二苯并环辛炔,AF647-DBCO,一种明亮且可感光的远红色染料

您好,欢迎来到新研之家 文章关键词:AF647 二苯并环辛炔,AF647 DBCO,Alexa Fluor 647 DBCO,AF647-二苯并环辛炔,AF647-DBCO 一、基本信息 产品简介:Alexa Fluor 647是一种独特的远红色染料&am…

第14章 File类与IO流

第14章 File类与IO流 主要内容 File类字节流字符流文件流缓冲流转换流对象流打印流Scanner、System与IO流 教学目标 使用File类对象表示文件或目录 能够辨别相对路径和绝对路径 能够说出IO流的分类和功能 能够使用FileOutputStream写出数据到文件 能够使用FileInputStream读…

uniapp-v3组合式语法-data实现

在vue选项式风格中,data数据是放置在export default 导出的对象中的一个data方法里面返回 export default {// data() 返回的属性将会成为响应式的状态// 并且暴露在 this 上data() {return {count: 0}},}但这样写,很明显一点都不优雅,代码缩进太多了,还没开始写呢,就已经嵌套…