iscpClient

来自于:AC模块工作室立即使用

概述

iscpClient封装了外网交互平台移动终端 SDK ,此SDK用于为移动终端上的应用程序(APP)提供一套开发接口,使其可以通过外网交互平台接入信息外网,安全地访问外网业务系统。 SDK 基于外网交互平台代理模式客户端的实现原理进行开发。简单来说就是,SDK 会在终端本地开一个(或几个,视有多少业务系统需要访问)监听端口;当 APP 需要访问外网业务系统时,需要连接该监听端口,建立代理连接,由 SDK 对业务数据进行加密传输。

图片说明

initSDK

初始化

initSDK(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:true // 布尔类型;是否初始化成功;
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    code:2 // 数字类型;后台线程退出时的错误信息;
}

示例代码

var iscpClient = api.require('iscpClient');
iscpClient.initSDK(function(ret) {
    if (ret) {
        alert(JSON.stringify(ret));
    }
    });

可用性

Android系统

可提供的1.0.0及更高版本

queryLocalPortFromAddress

查询本地监听端口;通过业务目的地址查找本地监听端口。

queryLocalPortFromAddress({params},callback(ret))

params

address:

  • 类型:字符串
  • 描述:业务系统的公网地址

port:

  • 类型:字符串
  • 描述:业务系统的公网端口

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:-1  // 数字类型;本地监听端口,当未找到或安全连接未建立时返回 -1。;
}

示例代码

var iscpClient = api.require('iscpClient');
iscpClient.queryLocalPortFromAddress({
 address:'192.168.0.108',
 port:'6001',
},function(ret) {
    if (ret) {
        alert(JSON.stringify(ret));
    }
    });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

connectToIscpServerWithHost

建立安全连接(启动后台线程,连接交互网关,得到访控列表,开启监听端口。)

connectToIscpServerWithHost({params},callback(ret))

params

host:

  • 类型:字符串
  • 描述:外网交互网关的公网地址

port:

  • 类型:字符串
  • 描述:外网交互网关的公网端口

sslThreadNum:

  • 类型:数字
  • 描述:安全线程
  • 默认:1

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{  
    status: true         // 布尔类型;建立安全连接成功;
    msg:'安全连接成功'     // 字符串;连接信息返回     **注意:仅支持iOS**
}

示例代码

var iscpClient = api.require('iscpClient');
iscpClient.connectToIscpServerWithHost({
host:'192.168.0.108',
port:'6001',
},function(ret) {
    if (ret) {
        alert(JSON.stringify(ret));
    }
    });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

connectSocket

建立应用连接

代替 Unix 标准 socket 接口中的 connect 方法,将 socket 句柄连接至目的地址。 但在内部实现中,实际会根据访问控制列表,将该 sock 连接至终端本地的代理监听端口。用户在使用时,其他步骤还是使用标准 Unix 的 socket 接口,包括 socket、send、recv 等,只将 connect 函数替换为对该方法的调用。

connectSocket({params},callback(ret))

params

host:

  • 类型:字符串
  • 描述:业务系统地址(公网地址或信息外网地址)

port:

  • 类型:字符串
  • 描述:业务系统端口

reqThreadNum:

  • 类型:数字
  • 描述:应用线程
  • 默认:1

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{  
    msg:'请先建立安全连接!' //字符串类型;
    status: true         // 布尔类型;连接成功;
}

示例代码

var iscpClient = api.require('iscpClient');
iscpClient.connectSocket({
   socket:'1',
   host:'192.168.0.108',
   port:'6001'
},function(ret) {
    if (ret) {
        alert(JSON.stringify(ret));
    }
    });

可用性

iOS

可提供的1.0.0及更高版本

urlAnalysedByISCPWithUrlString

URL地址改造(异步接口)

urlAnalysedByISCPWithUrlString({params},,callback(ret))

params

urlString:

  • 类型:字符串
  • 描述:需要访问的URL地址。

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    urlAnalysed:''  // 字符串类型;如果根据host和port能查询到本地动态监听端口,则返回改造后的URL地址;如果不能查询到动态监听端口,则返回传入的URL地址;
}

示例代码

var iscpClient = api.require('iscpClient');
iscpClient.urlAnalysedByISCPWithUrlString({
urlString:'http://192.168.0.98:9090',
},function(ret) {
    if (ret) {
        alert(JSON.stringify(ret));
    }
    });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

urlAnalysedByISCPWithUrlStringSync

URL地址改造(同步接口)

urlAnalysedByISCPWithUrlStringSync({params})

params

urlString:

  • 类型:字符串
  • 描述:需要访问的URL地址。

return

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    urlAnalysed:''  // 字符串类型;如果根据host和port能查询到本地动态监听端口,则返回改造后的URL地址;如果不能查询到动态监听端口,则返回传入的URL地址;
}

示例代码

var iscpClient = api.require('iscpClient');
var ret = iscpClient. urlAnalysedByISCPWithUrlStringSync({
urlString:'http://192.168.0.98:9090'
});
alert(JSON.stringify(ret));

可用性

iOS、Android系统

可提供的1.0.0及更高版本

disconnectServer

断开安全连接

disconnectServer(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
   msg:'安全连接未建立或已断开。' //字符串类型;
   status:false               //布尔类型;断开连接是否成功
}

示例代码

var iscpClient = api.require('iscpClient'); iscpClient.disconnectServer(function(ret) { if (ret) { alert(JSON.stringify(ret)); } });


##可用性
iOS、Android系统

可提供的1.0.0及更高版本

<div id="a8"></div>

#**addLogListener**

添加log监听

addLogListener(callback(ret))

##callback(ret)

ret:

- 类型:JSON 对象
- 描述:仅android支持
- 内部字段:

```js
{
   status:false               //布尔类型;是否设置成功
}

示例代码

var iscpClient = api.require('iscpClient'); iscpClient.addLogListener(function(ret) { if (ret) { alert(JSON.stringify(ret)); } }); ```

可用性

Android系统

可提供的1.0.0及更高版本