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

致远OA——自定义开发rest接口

文章目录

    • :apple: 业务流程

🍎 业务流程

代码案例: https://pan.quark.cn/s/57fa808c823f
官方文档:

  • https://open.seeyoncloud.com/seeyonapi/781/
  • https://open.seeyoncloud.com/v5devCTP/39/783.html

 
 

登录系统 —— 后台管理 —— 切换系统管理员 —— 信息集成配置 —— rest用户管理 —— 新建

在这里插入图片描述

根据上面生成的用户名和密码,发送请求获取 token,后续用于访问自己的定义的 `rest`` 接口使用。

官方文档如下:

在这里插入图片描述

我们自己进行测试获取:
在这里插入图片描述

注意:上面的 token 失效只有十五分钟。

在这里插入图片描述


自定 rest 接口:

根据官方文档,提供的案例我们进行自己的 rest 接口开发,下面是官方文档案例:
在这里插入图片描述

注意:这里我们定义的 rest 接口的包位置一定要放在 com.seeyon.ctp.rest.resources 包的下面。项目是按照一定规则去加载的,如果包名不一致是加载不到的,接口是访问不到的

在这里插入图片描述

package com.seeyon.ctp.rest.resources;import java.util.Map;import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Response;import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;import com.seeyon.apps.ext.HaiKangDataSysn.manager.HaiKangAllDataSysnManager;
import com.seeyon.ctp.common.AppContext;
import com.seeyon.ctp.common.exceptions.BusinessException;
import com.seeyon.ctp.services.ServiceException;
import com.seeyon.ctp.util.annotation.RestInterfaceAnnotation;@Path("/custmerBtnRest")
@Produces({ "application/json", "application/xml" })
public class CustmerBtnRestResource extends BaseResource {private static final Log log = LogFactory.getLog(CustmerBtnRestResource.class);private HaiKangAllDataSysnManager HaiKangAllDataSysnManager=(HaiKangAllDataSysnManager) AppContext.getBean("HaiKangAllDataSysnManager");@GET@Consumes({ "application/xml", "application/json" })@Path("findHaiKangData")@RestInterfaceAnnotationpublic Response findHaiKangData(@QueryParam("type") String type) throws ServiceException {HaiKangAllDataSysnManager.sysnAllDataToOA(Integer.valueOf(type));return success("ok");}@POST@Path("finishaffair")@Consumes({ "application/xml", "application/json" })@RestInterfaceAnnotationpublic Response finishaffair(Map<String, String> param) throws BusinessException {return this.ok(Boolean.valueOf(true));}}

将开发好的接口编译成 .class 文件,替换到项目中,重新启动项目常识访问我们的接口即可。访问前需要添加请求头,将我们前面获取到的 token 放到请求头中:

请求头:

keyvalue
tokend07f4800-6835-4edc-8ff8-d3eff936b91b
Acceptapplication/json
Content-Typeapplication/json;charset=UTF-8
User-AgentMozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.76 Safari/537.36

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

http://www.xdnf.cn/news/407.html

相关文章:

  • Android开发四大组件和生命周期及setFlags
  • 触发器(详解)
  • jmeter利用csv进行参数化和自动断言
  • C算术运算符 printf输出格式 字符指针打印输出 使用scanf函数进行输入
  • ReSearch:基于强化学习的大语言模型推理搜索框架
  • CCLinkIE转EtherCAT边缘计算网关构建智能产线:跨协议设备动态组网与数据优化传输
  • 【机器学习-周总结】-第4周
  • 【软件测试】
  • ISO26262-浅谈用例导出方法和测试方法
  • Flutter学习 滚动组件(2):ListView进阶使用
  • Linux网络编程 深入解析Linux TCP:TCP实操,三次握手和四次挥手的底层分析
  • 【计算机视觉】CV实战项目- Face-and-Emotion-Recognition 人脸情绪识别
  • 微服务与事件驱动架构(EDA)
  • React-请勿在循环或者条件语句中使用hooks
  • tigase源码学习杂记-AbstractMessageReceiver
  • 算法题(128):费解的开关
  • 手动实现LinkedList
  • 【操作系统原理02】进程的描述与控制
  • Kubernetes 多主多从集群部署完整文档
  • 【上海大学计算机系统结构实验报告】多机环境下MPI并行编程
  • 国产GPU生态现状评估:从寒武纪到壁仞的编程适配挑战
  • 健康养生之道
  • package.json ^、~、>、>=、* 详解
  • JMeter介绍
  • Sentinel源码—5.FlowSlot借鉴Guava的限流算法二
  • Redis增删改查
  • FPGA——DDS信号发生器设计
  • 基于chatgpt和deepseek解答显卡的回答
  • Python语法系列博客 · 第8期[特殊字符] Lambda函数与高阶函数:函数式编程初体验
  • 【25软考网工笔记】第二章(7)多路复用技术