Commit 01d6b022 authored by yinjiacheng's avatar yinjiacheng

update B端网络服务支持H5传参标识接口是否需要加密

parent d73baf3c
...@@ -84,6 +84,18 @@ class HttpParamsUtils { ...@@ -84,6 +84,18 @@ class HttpParamsUtils {
} }
} }
/**
* 获取业务参数
* C端增加user_id
* 注意: 使用此方法封装业务参数的接口是所有API环境下都不需要进行加密的
*/
fun getPrivateParamsMap(paramsMap: HashMap<String, String?>): HashMap<String, String?> {
// C端身份请求加uid
BCommonManager.getUid()?.let { paramsMap["user_id"] = it }
Timber.tag(BCommonManager.TAG_HTTP).d("request private params: ${gson.toJson(paramsMap)}")
return paramsMap
}
/** /**
* 获取业务参数(参数为JSONObject的情况) * 获取业务参数(参数为JSONObject的情况)
* C端增加user_id * C端增加user_id
......
...@@ -28,16 +28,17 @@ class BNAHttpReqService : ZapService() { ...@@ -28,16 +28,17 @@ class BNAHttpReqService : ZapService() {
val requestOptions = options as JSONObject val requestOptions = options as JSONObject
val method = requestOptions.optString("method", "POST") val method = requestOptions.optString("method", "POST")
val host = requestOptions.optString("host", RunConfig.API_URL) val host = requestOptions.optString("host", RunConfig.API_URL)
val isEncrypt = requestOptions.optBoolean("is_encrypt", true)
val url = host + apiPath val url = host + apiPath
val paramsMap: HashMap<String, String?> = parseParams(requestParams) val paramsMap: HashMap<String, String?> = parseParams(requestParams)
//发起请求 //发起请求
when (method) { when (method) {
"GET", "get" -> { "GET", "get" -> {
BNARemoteDataSource.launchGetRequest(iMBRequestCallBackImpl, paramsMap, url, resolver) BNARemoteDataSource.launchGetRequest(iMBRequestCallBackImpl, paramsMap, url, isEncrypt, resolver)
} }
"POST", "post" -> { "POST", "post" -> {
BNARemoteDataSource.launchPostRequest(iMBRequestCallBackImpl, paramsMap, url, resolver) BNARemoteDataSource.launchPostRequest(iMBRequestCallBackImpl, paramsMap, url, isEncrypt, resolver)
} }
else -> { else -> {
resolver.fail(-1000, "request error", "不支持的请求方式") resolver.fail(-1000, "request error", "不支持的请求方式")
......
...@@ -13,10 +13,17 @@ object BNARemoteDataSource { ...@@ -13,10 +13,17 @@ object BNARemoteDataSource {
/** /**
* 发起get请求 * 发起get请求
*/ */
fun launchGetRequest(apiCallback: IBNARequestCallBack, requestParams: HashMap<String, String?>, url: String, resolver: ResultResolver) { fun launchGetRequest(
apiCallback: IBNARequestCallBack,
requestParams: HashMap<String, String?>,
url: String,
isEncrypt: Boolean,
resolver: ResultResolver
) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
val privateParamsMap = HttpParamsUtils.getPrivateParamsMap(requestParams, timeStamp) val privateParamsMap =
if (isEncrypt) HttpParamsUtils.getPrivateParamsMap(requestParams, timeStamp) else HttpParamsUtils.getPrivateParamsMap(requestParams)
ServiceFactory.getInstance().createService(BNAService::class.java) ServiceFactory.getInstance().createService(BNAService::class.java)
.mbGetRequest(url, publicParamsMap, privateParamsMap) .mbGetRequest(url, publicParamsMap, privateParamsMap)
.compose(TransformUtil.defaultSchedulers()) .compose(TransformUtil.defaultSchedulers())
...@@ -34,10 +41,17 @@ object BNARemoteDataSource { ...@@ -34,10 +41,17 @@ object BNARemoteDataSource {
/** /**
* 发起post请求 * 发起post请求
*/ */
fun launchPostRequest(apiCallback: IBNARequestCallBack, requestParams: HashMap<String, String?>, url: String, resolver: ResultResolver) { fun launchPostRequest(
apiCallback: IBNARequestCallBack,
requestParams: HashMap<String, String?>,
url: String,
isEncrypt: Boolean,
resolver: ResultResolver
) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
val privateParamsMap = HttpParamsUtils.getPrivateParamsMap(requestParams, timeStamp) val privateParamsMap =
if (isEncrypt) HttpParamsUtils.getPrivateParamsMap(requestParams, timeStamp) else HttpParamsUtils.getPrivateParamsMap(requestParams)
ServiceFactory.getInstance().createService(BNAService::class.java) ServiceFactory.getInstance().createService(BNAService::class.java)
.mbPostRequest(url, publicParamsMap, privateParamsMap) .mbPostRequest(url, publicParamsMap, privateParamsMap)
.compose(TransformUtil.defaultSchedulers()) .compose(TransformUtil.defaultSchedulers())
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment