PIPOToken 配置

作者:斌将军 约 4 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:ABAP, Data Engineering, MM, WM, 仓库管理, 开发, 数据工程, 物料管理
PIPOToken 配置 - 封面图
PIPOToken 配置 - 封面图

** 接收方通道配置 **

因为本例中需要在访问业务接口时,获取某平台的TOKEN认证,并在调用业务接口时,将TOKEN一同传给某平台,但是不能放在请求参数中,而是放在HTTP的Headers

** 注意! ** 是Headers而不是前边的请求参数header,

因此以下有两种方式,介绍如何在访问业务接口时,推送TOKEN。

**方法一:添加TOKEN到Headers参数中**

PIPOToken 配置 - 封面图
PIPOToken 配置 - 封面图

填入调用的业务接口地址

选择Value Source:XPath Expression.因为我们传入的字段是XML形式

Pattern Element name:要将值传递给Headers里面的那个参数(理解为形参)

XPath Expression:传入字段的名称(理解为实参)

PIPOToken 配置 - 封面图
PIPOToken 配置 - 封面图

使用POST方式

PIPOToken 配置 - 封面图
PIPOToken 配置 - 封面图

请求时,将数据转换为JSON格式

PIPOToken 配置 - 封面图
PIPOToken 配置 - 封面图

在接收时,将JSON转换为XML

PIPOToken 配置 - 封面图
PIPOToken 配置 - 封面图

里面的Element Name可以在MT里面找到

PIPOToken 配置 - 封面图
PIPOToken 配置 - 封面图

当传递表类型时,如果只有一条数据,在转换成JSON将会失去JSON中代表数组的[],传递到对方系统解析错误,所以要在此处定义,当body表中只有一条时,仍然是数组结构:"body":

**[** {"esOuCode":1000,"sourceCode":"SAP","enabledFlag":1} **]**

PIPOToken 配置 - 封面图
PIPOToken 配置 - 封面图

在Headers的参数中添加Authorization,并使用{Authorization}的写法

PIPOToken 配置 - 封面图
PIPOToken 配置 - 封面图

而请求参数中的数据就传到了Headers

PIPOToken 配置 - 封面图
PIPOToken 配置 - 封面图

**方法二:配置获取TOKEN链接到通道中**

在这种配置中不需要在请求参数中传递AuthToken

不需要在Headers参数中传递AuthToken

直接将获取某平台Token的认证接口地址配置在此处,当调用业务接口时,临时通过认证接口先获取Token

PIPOToken 配置 - 封面图
PIPOToken 配置 - 封面图

## 问题解决

1、因为我们调用的业务接口时HTTPS类型的网址,但是缺少证书,需要在PI中配置网络证书

PIPOToken 配置 - 封面图
PIPOToken 配置 - 封面图

2、字段映射出现问题,导致接收数据时报错:

PIPOToken 配置 - 封面图
PIPOToken 配置 - 封面图

将映射的连线全部去掉,可以在返回的消息中找到返回的JSON,然后对照字段查看问题

PIPOToken 配置 - 封面图
PIPOToken 配置 - 封面图

3、返回401或者403禁用的错误

是因为没有传递TOKEN或传递的TOKEN无效

斌将军

关于作者:斌将军

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「PIPOToken配置.md」整理生成,仅用于内部技术分享与学习交流。