API
MiddlewareClient
中间件客户端Api,用来让宿主服务访问中间件的客户端。
create(String host, int timeout)
-
参数
- host: 中间件地址,例:http://127.0.0.1:8888
- timeout: 超时时间(毫秒),例:5000
-
返回值
返回一个
MiddlewareClient
实例 -
描述
静态方法 ,用于创建一个
MiddlewareClient
客户端实例,指定中间件地址及超时时间。
setUrl(String url)
-
参数
-
url : 需要请求服务方的url。例:/user/getList
-
返回值
返回当前
MiddlewareClient
实例
- 描述
设置请求服务方的url,根据服务定义中的接口url进行填写,不需要填写地址及端口号,只需要填写url即可。
setHttpType(HttpType httpType)
-
参数
-
httpType : 请求类型。例:HttpType.GET
-
返回值
返回当前
MiddlewareClient
实例
- 描述
设置请求类型,请根据服务方服务定义中的接口请求类型进行填写。
setHeader(String key, String value)
-
参数
-
key : 请求头key值。例:x-access-id
-
value: 请求头value值。例:659426660
-
返回值
返回当前
MiddlewareClient
实例
- 描述
设置http请求头内容。
setServiceId(String serviceId)
-
参数
-
serviceId : 中间件中用户定义的serviceId。例:1
-
返回值
返回当前
MiddlewareClient
实例
- 描述
用户定义的serviceId,在中间件配置文件
repchain-services-serviceId
中定义。
setForm(Map form)
-
参数
-
form : 需要传输的参数。
-
返回值
返回当前
MiddlewareClient
实例
- 描述
用于请求服务方传输的参数。
setFile(File file)
-
参数
-
file : 需要传输的文件。例:new File("/home/test/xxx.tar")
-
返回值
返回当前
MiddlewareClient
实例
- 描述
此文件应该持久化在宿主机中。若没有持久化到宿主机,请先将文件持久化到宿主机。
此处用于获取文件的绝对路径,将文件的绝对路径传输给中间件。
setFileField(String fileField)
-
参数
-
fileField : 文件映射的参数字段。
-
返回值
返回当前
MiddlewareClient
实例
setCallbackId(String callbackId)
-
参数
-
callbackId : 异步请求的callbackID。
-
返回值
返回当前
MiddlewareClient
实例
- 描述
异步请求时会随着请求一起传过来,返回异步信息时需要携带此参数进行返回。
msg()
-
参数
-
无。
-
返回值
获取中间件返回结果对象 InterCoResult
- 描述
发送数据,简化发送数据流程,此方法通常只用于同步请求发送数据,且不需要进行数据持久化。
msg( ReqOption reqOption)
-
参数
-
reqOption : 请求配置项。
-
返回值
获取中间件返回结果对象InterCoResult
- 描述
发送数据,并获取返回结果,通过 ReqOption 对象进行发送数据设置,例如是否为同步请求,是否持久化等。
sendFile()
-
参数
-
无
-
返回值
获取中间件返回结果对象InterCoResult
- 描述
发送文件,此方法仅支持同步获取结果,如果文件过大请使用其他方式传输文件,或者将客户端超时时间适当延长。
使用此方法时,必须先设置 setFile 和 setFileField。
sendFile( ReqOption reqOption)
-
参数
-
reqOption : 请求配置项。
-
返回值
获取中间件返回结果对象InterCoResult
- 描述
发送文件,使用此方法时,必须先设置 setFile 和 setFileField。如果文件过大可在 ReqOption中设置为异步传输。
download()
-
参数
-
无
-
返回值
获取中间件返回结果对象InterCoResult
- 描述
下载文件,此方法只支持同步请求,如果文件过大,请适当延长超时时间或者使用异步请求方式。
download( ReqOption reqOption)
-
参数
-
reqOption : 请求配置项。
-
返回值
获取中间件返回结果对象InterCoResult
- 描述
下载文件,如果文件过大,请适当延长超时时间或者使用异步请求方式。
data( PerReq perReq)
-
参数
-
perReq : 查询条件参数。
-
返回值
获取中间件返回结果对象InterCoResult
- 描述
获取持久化数据接口,提供存证服务id(cid),及分页查询方法,默认可以传空对象(new PerReq())。
ReqOption
请求配置对象,用于配置请求数据是否持久化等。
seq
- 类型:int
- 默认:1
- 描述:用于表示同一次调用中调用的序号,默认为1,若在同一次调用中存在多次请求,请手动递增此设置。
isEnd
- 类型:int
- 默认:
ReqOption.TRUE
- 描述:用于表示是否为最后一次请求,若在同一次调用中存在多次请求,请将非最后一次请求设置为
ReqOption.FALSE
。
bReq
- 类型:int
- 默认:
ReqOption.TRUE
- 描述:用于表示是否为请求,如果为异步请求应答调用方时,此处需要设置为
ReqOption.FALSE
。
callBackMethod
- 类型:String
- 默认:
ReqOption.GET
- 描述:用于设置应答接口的方法,如:
ReqOption.GET
,ReqOption.POST
,只有在设置为异步请求时,此选项才会生效。
callBackUrl
- 类型:String
- 默认:/
- 描述:用于设置应答接口的 url,例:/callback/list,只有在设置为异步请求时,此选项才会生效。
cid
- 类型:String
- 默认:由客户端自动生成随机ID。
- 描述:用于标识请求id,如果一次调用存在多次请求,推荐使用同一个请求id。
sync
- 类型:int
- 默认:
ReqOption.TRUE
- 描述:是否为同步请求,默认为同步请求。
reqSave
- 类型:int
- 默认:
ReqOption.FALSE
- 描述:是否将请求参数持久化到中间件,默认为不持久化。
resultSave
- 类型:int
- 默认:
ReqOption.FALSE
- 描述:是否将获取的请求结果持久化到中间件数据库,默认为不持久化。
fileSave
- 类型:int
- 默认:
ReqOption.FALSE
- 描述:是否将上传的文件或下载的文件进行备份持久化,默认为不持久化。
InterCoResult
客户端返回结果对象,用于接收中间件返回的数据。
code
- 类型:int
- 默认:无
- 描述:返回结果状态码,0为正确,其他为异常。
msg
- 类型:String
- 默认:无
- 描述:返回的状态消息,如果 code 不为零,则会返回错误信息。
data
- 类型:Object
- 默认:无
- 描述:请求返回的数据。
cid
- 类型:String
- 默认:无
- 描述:每次请求存证的请求ID。
filePath
- 类型:String
- 默认:无
- 描述:如果请求为下载文件,此处会返回下载文件的文件路径。
PerReq
获取持久化数据查询对象。
cid
- 类型:String
- 默认:无
- 描述:请求存证id,可在Dashboard中请求接口存证界面查看,可以为空。
pageNo
- 类型:int
- 默认:无
- 描述:页码,从0开始,可以为空,为空时服务端默认为0。
pageSize
- 类型:int
- 默认:无
- 描述:每页数量,可以为空,为空时服务端默认为10。