0
点赞
收藏
分享

微信扫一扫

CPI 访问需验证的HTTP接口

zidea 2022-10-24 阅读 93

CPI访问外围系统接口时,有时需要先访问验证接口,获取AccessToken或得到账密,然后访问具体接口时,将获取到的验证结果传入具体接口进行访问

1、OAuth2.0 AccessToken方式

1.1、POSTMAN演示步骤

首先调用Token链接

CPI 访问需验证的HTTP接口_接口调用

 调用业务接口

CPI 访问需验证的HTTP接口_CPI_02

1.2、CPI配置

将获取AccessToken的过程,配置在CPI中,当CPI访问外围接口时,触发验证功能,获取AccessToken,达到验证的功能

点击管理安全材料,创建OAuth2 客户端凭证 DEV_SRM

CPI 访问需验证的HTTP接口_CPI_03

在业务接口的Integration Flow中,选择校验方式为OAuth2 Client Credentials,并输入上文创建的客户端凭证名称DEV_SRM

CPI 访问需验证的HTTP接口_CPI_04

 部署后,访问的结果和POSTMAN的结果一致

2、账密方式

 有的系统的验证,是访问认证接口后返回账户名和密码

2.1获取账密

首先可以先访问认证接口获取username和password,将账户名密码传入业务接口的header

CPI 访问需验证的HTTP接口_接口调用_05

 2.2在CPI中添加.groovy脚本

CPI 访问需验证的HTTP接口_接口调用_06

 代码如下:将用户名密码按照要求拼接进行校验,实现业务接口调用时的验证

def Message processData(Message message) {

def headers = message.getHeaders();
def username = headers.get("username");
def password = headers.get("password");

def credentials = username + ":" + password;

def byteContent = credentials.getBytes("UTF-8");
def auth = DatatypeConverter.printBase64Binary(byteContent);

message.setHeader("Authorization", "Basic " + auth);

return message;
}

举报

相关推荐

0 条评论