@服务管理 @服务脚本 @定时代理 @服务接口编写 @脚本编写

O2OA提供的服务管理中心可以让用户使用Javascript语言自由编写脚本的处理逻辑来实现与第三方的数据交互,数据同步以及系统内的数据处理等工作,也可以编写系统内的定时任务脚本。本文主要介绍O2OA系统定时代理和接口的脚本编写。


接口”可以提供Http服务让外部程序调用,使用Javascript编写,可以直接调用Java类。

入口

点系统的左上角图标->应用->服务管理平台->接口打开。

image.png

访问限制

如果“访问的地址表达式”不为空,那么只有匹配的地址可以访问,允许使用通配符。

接口调用

接口请求方式

http

请求地址

http://centerServer:20030/x_program_center/jaxrs/invoke/{flag}/execute

flag的值优先级为

1、别名不为空,使用别名;

2、名称不为空,使用名称;

3、也可以使用id作为flag。

请求方法

POST

请求标头

Content-Type: application/json

响应标头

Content-Type: application/json; charset=utf-8

接口调试

打开URL: http://centerServer:20030/x_program_center/jest/index.html

image


在上图的服务中填写接口的标识(接口别名、名称或者ID),在JsonElement区域输入接口接收数据,然后点击POST进行调试,接口会在Result区域输出返回数据。

可以在接口中使用print( text )在服务器控制台输出调试信息。

输入和输出

在接口脚本中可以使用 requestText 来获取请求的内容。

在接口脚本的末尾使用直接量作为接口的输出。

样例: 在调用接口的时候提交的报文为 { "subject" : "接口测试样例" },那么脚本中的获取为:


var requestJson = JSON.parse(requestText);
if( typeof(requestJson) === "string" ){ //某些情况下可能需要转换两次
    requestJson = JSON.parse(requestJson);
}
var subject = requestJson.subject; //subject值为"接口测试样例"
var result = { "result" : "已获取subject"+subject };
result; //接口的输出
最终接口的http request正文如下
{
    "type": "success",
    "data": {
        "value": { //接口脚本的输出内容
            "result": "已获取subject这是一个测试接口"
        }
    },
    "message": "",
    "date": "2019-08-18 18:09:24",
    "spent": 397,
    "size": -1,
    "count": 0,
    "position": 0
}


当前用户

使用 effectivePerson 来获取当前用户。

如果未登录系统,返回如下:

{
 "tokenType": "anonymous",
 "token": "",
 "name": "anonymous",
 "unique": "anonymous",
 "distinguishedName": "anonymous",
 "debugger": true,
 "remoteAddress": "115.216.34.235",
 "uri": "/x_program_center/jaxrs/invoke/invokeTest/execute",
 "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0"
}


如果已登录系统,返回如下:

{
"tokenType": "user", //如果是管理员为manager
"token": "jlMh2guoFibWcTwR3NHdVTbw_ylqeq-uFLrLL9stmcruJSx7mPOjiX-euWIQv-ovp8orv1dTAwkavfdfdfdfdf",
"name": "张三",
"unique": "zhangsan",
"distinguishedName": "张三@zhangsan@P",
"debugger": true,
"remoteAddress": "115.216.34.235",
"uri": "/x_program_center/jaxrs/invoke/invokeTest/execute",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/17.17134"
}


完整样例

样例名称

链接

用户同步接口

链接

组织同步接口

链接

更多样例可以查看 webServer/x_component_service_InvokeDesigner/sample/ 目录


推荐文章:

服务集成-发送用户名使用SSO进行登录认证
2021-03-02
O2OA提供多种SSO单点认证方式,比如约定密钥,OAuth2,SMAP等等。本文主要演示如何通过登录用户名,和SSO相关的配置,使用单点认证的方式进行O2Se
功能部署-为平台增加全文检索功能
2021-02-25
O2OA平台对流程和信息数据提供全文检索功能,可以对流程和信息的表单信息以及附件的文件内容进行分析和索引,提供全文检索能力。本篇主要介绍如何将在O2OA中安装部
数据中心-自定义数据表
2021-03-01
O2OA提供的数据管理中心,可以让用户通过配置的形式完成对数据的汇总,统计和数据分组展现,查询和搜索数据形成列表数据展现。也支持用户配置独立的数据表来适应特殊的
藕粉社区问答系列2
2021-09-22
[流程开发]自定义页面怎么取流程表单的值问题内容:就是首页的这个自定义页面我想把这个第二张图表单里面的select_1的字段值在自定义首页这里展示但是怎么取值才
数据中心-简介
2021-10-22
概述数据中心是O2OA系统的五大平台之一,是对数据的列式、统计、分组展现、查询搜索、导入导出的工具。数据中心可以有多个应用,以对应不同的业务模块。每个数据中心应
服务管理-前后端脚本的差异
2021-03-01
O2OA提供的服务管理中心可以让用户使用Javascript语言自由编写脚本的处理逻辑来实现与第三方的数据交互,数据同步以及系统内的数据处理等工作。本文主要介绍
藕粉社区问答系列4
2021-10-15
[流程设计]流程中,调用服务报错问题内容:解决方案:是由于用户选错服务应用接口,应用是组织管理而不是组织管理接口服务[流程设计]流程图中选择活动的条件中如何在控
源码编译-IOS客户端打包处理
2021-03-15
O2OA是真正全代码开源的应用开发平台,开发者可以直接使用从github或者gitee上clone的源码编译成IOS客户端,代码可以修改,安全可靠,无限制。本文
O2OA与SmartBI报表系统集成:一、SmartBI报表应用安装部署
2021-12-04
@SmartBI@报表@O2OA1、SmartBI系统介绍 思迈特软件成立于2011年,致力于为企业客户提供一站式商业智能解决方案。以“Smartbi”品牌推出
开发知识-数据优化知识点
2021-02-07
查询性能优化使用连接(JOIN)来代替子查询(Sub-Queries)MySQL从4.1开始支持SQL的子查询。这个技术可以使用SELECT语句来创建一个单列的

results matching ""

    No results matching ""