轻易云用友NCC产品API集成专题

open api简介

Open API即开放API,也称开放平台。 所谓的开放API(OpenAPI)是服务型网站常见的一种应用,网站的服务商将自己的网站服务封装成一系列API(Application Programming Interface,应用编程接口)开放出去,供第三方开发者使用,这种行为就叫做开放网站的API,所开放的API就被称作OpenAPI(开放API)。

就现在互联网上Open API的形态来看,主要分成两种:标准REST和类REST(也可以叫做RPC形态)。

REST形态主要有这么几点特点:

  • 1.服务地址就是资源定位地址。
  • 2.服务操作就是Http请求中的方法类型(GET,POST,DELETE,PUT),这其实是抽象现实当中对于服务的增删改查操作。

UAP实现open api

Restlet项目为“建立REST概念与Java类之间的映射”提供了一个轻量级而全面的框架。

UAP在Restlet框架之上,选择了官方JAX-RS扩展,并且在扩展的基础上与NC进行了集成。

主要jar包 modules/uapws/pubuapfw_restframeworkLevel-1.jar

NC使用Restlet框架需要修改nchome/hotwebs/nccloud/WEB-INF/web.xml文件。增加以下两个配置



业务组open api开发步骤

  1. 创建资源

    创建资源类xxResource 继承AbstractNCCRestResource

    通过注解的方式开发,restlet通用注解包含如下:

    在ncc中要求rest请求类型只能是post



资源创建完成之后即可进入轻易云系统数据集成平台添加对应的专属连接器进行系统对接。

  1. 资源注册

    和upm文件类似,创建的资源需要在配置文件中进行注册。注册方式:在META-INF下创建.rest文件,将创建的资源全限定类名注册到.rest文件中。



注:和upm文件一样,此文件在运行时必须包含在nchome/modules/XX/META-INF下

3.编写md文档(api使用说明)

  1. 在openapi组件下META-INF同级目录下创建hotwebs文件夹。

  2. 在hotwebs文件夹下按照nccloud/resources/api/modules/模块/组件/帮助文档.md的目录结构创建帮助文档文件

  3. 在注册openpi的时候,需要填写访问路径和文档路径,文档路径需要从模块开始具体到md文件,例如:样例中的文档路径应该填写为 /aim/equip/equip.md

    4.预制api脚本

    1.在环境路径 http://ip:port/nccloud/resources/opm路径下注册api相关信息,包括:api所属模块,api所属实体,api访问路径,api帮助文档路径等。(具体操作和规范参见openapi配置中心使用文档)

    2.将注册的api脚本抽取出来作为预制脚本提交到盘里(注意脚本中的访问路径要和md文档中的访问路径一致;脚本中api帮助文档地址要和第三步文档路径一直)

open api 开发规范

  1. 资源包命名规范:ncc.openapi.模块.业务组件.业务操作

    示例:ncc.openapi.aum.borrow.apply(借用申请)

    2.资源类命名规范:业务组件+业务操作+Resources(驼峰命名)

    示例:BorrowApplyResources

    3.uri定义:nccloud/api/模块/业务组件/业务操作/动词

    (增:add;删除:delete;查询:query;修改:update (其他业务动词自定义))

    示例:http://ip:port/nccloud/api/aum/borrow/apply/query(查询借用申请)

  2. md文档语法规范:(md文档的名称不要重复)

    a. 文档名称用一号字【#】,一级目录用二号字【##】,三级目录使用三号字【###】以此类推。

    b. 请求地址前加【>】地址内容必须和注册的api脚本访问路径一致。格式:http://ip:port/apiUrl.(如:http://ip:port/nccloud/api/fip/service/add)

    c. 表格的格式:表头内容必须用【|】包起来,第二行必须跟上【|---|---|---|】表头有几列加几个。

    d. 请求参数和返回值参数的写法:如果是主子表格式的,在3.3中描述参数分类,如:head,body。分别在3.3.1和3.3.2中描述head和body的内容。如下图

    e.json示例:json示例以【请求参数json示例】和【返回值json示例】命名。用【```】包起来,内容必须是标准json格式的数据。

Openapi测试

Openapi测试参见openapi使用文档。通过轻易云的系统数据集成策略也可以进行在线的用友NCC API调用

用友NCC产品API使用指南的更多相关文章

  1. RESTFUL API 安全设计指南

    RESTFUL API 安全设计指南 xxlegend · 2015/10/18 15:08 0x01 REST API 简介 REST的全称是REpresentational State Trans ...

  2. Web API 入门指南 - 闲话安全

    Web API入门指南有些朋友回复问了些安全方面的问题,安全方面可以写的东西实在太多了,这里尽量围绕着Web API的安全性来展开,介绍一些安全的基本概念,常见安全隐患.相关的防御技巧以及Web AP ...

  3. RESTful API 设计指南 (转)

    RESTful API 设计指南 2016-02-23 ImportNew (点击上方公号,可快速关注) 作者:阮一峰 链接:http://www.ruanyifeng.com/blog/2014/0 ...

  4. 来自HeroKu的HTTP API 设计指南(中文版)

    原文转自:http://get.jobdeer.com/343.get 来自HeroKu的HTTP API 设计指南(中文版) 翻译 by @Easy 简介 本指南中文翻译者为 @Easy ,他是国内 ...

  5. Web API入门指南(安全)转

    安全检测的工具站点:https://www.owasp.org/index.php/Category:Vulnerability_Scanning_Tools Web API入门指南有些朋友回复问了些 ...

  6. MTM量身定制系统 - 富友ERP产品 - 信息化推动服装行业管理软件升级

    MTM量身定制系统 - 富友ERP产品 - 信息化推动服装行业管理软件升级 国内第一款量体定制管理系统               结合富友软件10年服装行业经验和多家大型量身定制企业管理经验,推出的 ...

  7. 组件接口(API)设计指南-文件夹

    组件接口(API)设计指南-文件夹 组件接口(API)设计指南[1]-要考虑的问题 组件接口(API)设计指南[2]-类接口(class interface) 组件接口(API)设计指南[3]-托付( ...

  8. Web API 入门指南

    Web API 入门指南 - 闲话安全2013-09-21 18:56 by 微软互联网开发支持, 231 阅读, 3 评论, 收藏, 编辑 Web API入门指南有些朋友回复问了些安全方面的问题,安 ...

  9. XMLHttpRequest API 使用指南

    一.实例化 XMLHttpRequest 对象 使用 Ajax API 的第一件事情就是实例化 XMLHttpRequest 对象. var xhr = new XMLHttpRequest(); 二 ...

  10. RESTFul API设计指南及使用说明

    RESTFul API设计指南及使用说明 一. 协议 API与用户的通信协议,使用HTTP协议. 二. 域名 应尽量将API部署在专用域名之下(http://api.example.com) 也可以将 ...

随机推荐

  1. 手写promise之分步解析

    promise是es6推出适用于异步请求的构造函数,帮助解决回调地狱的问题,以下内容将自定义实现promise,只包括基本使用,所以一些边界情况考虑没有在内. 如果对promise用法还不熟悉的朋友可 ...

  2. 【go笔记】目录操作

    基本目录操作 涉及:创建目录.重命名目录.删除目录 package main import ( "fmt" "os" "time" &quo ...

  3. 数仓备份经验分享丨详解roach备份原理及问题处理套路

    本文分享自华为云社区<GaussDB(DWS) 备份问题定位思路>,作者: yd_216390446. 前言 在数据库系统中,故障分为事务内部故障.系统故障.介质(磁盘)故障.对于事务内部 ...

  4. AI绘画StableDiffusion实操教程:月光下的美人(含高清图片)

    本教程收集于:AIGC从入门到精通教程汇总 今天继续分享AI绘画实操教程,如何用lora包生成超真实好看质感超强的人物图片. 放大高清图已放到教程包内,需要的可以自取. 出图效果: 更多图片资源访问查 ...

  5. Deep Transfer Learning综述阅读笔记

    这是一篇linkedin发表的深度迁移学习综述, 里面讲了一些对于search/recommend system中的迁移学习应用. 有不少指导性的方法, 看完后摘录出来 对于ranking方向的TL, ...

  6. 微信Native支付(扫码支付)商户配置

    0.需要从商户平台获取/设置的配置 公众号appId 商户号 APIv3密钥 证书序列号 证书密钥 1.扫码登录商户平台 网址:https://pay.weixin.qq.com/ 2.确认已开通Na ...

  7. 「codechef - STRQUER」Strange Queries

    link. 首先对原序列排序,考虑静态序列做法为:设 \(f(n,k\in\{0,1\})\) 为对于前 \(n\) 个数,第 \(n\) 个数否 / 是已经决策完毕的最优方案,转移即 \[\begi ...

  8. dp_ppi转光纤模块连接200PLC组态王通信案例

    DP_PPI转光纤模块连接200PLC组态王光纤通信在冷却塔控制系统案例 现场背景介绍: 西门子200 CPU226PLC通过兴达易控dp转光纤模块在200PLC系统中ppi转光纤实现PCL与组态王2 ...

  9. dms

          产品解决方案文档与社区免费试用定价云市场合作伙伴支持与服务了解阿里云       备案控制台 首页关系型数据库NoSQL数据库数据仓库数据管理工具向量数据库免费试用 个人     打卡 发 ...

  10. 12. 用Rust手把手编写一个wmproxy(代理,内网穿透等), TLS的双向认证信息及token验证

    12. 用Rust手把手编写一个wmproxy(代理,内网穿透等), TLS的双向认证信息及token验证 项目 ++wmproxy++ gite: https://gitee.com/tickbh/ ...