Azure Data Factory中REST API链接服务配置失败,求正确配置方法
在Azure Data Factory中配置Informatica MDM REST API实现文件上传
1. 创建REST链接服务
- 进入Azure Data Factory,新建链接服务,选择
REST类型 - 基础URL填写:
https://use4-mdm.dm-us.informaticacloud.com/rdm-service/external/v1 - 身份验证选择
Anonymous(后续在活动中添加会话ID头),测试连接确保API端点可达
2. 配置待上传文件的数据集
- 新建数据集,选择对应存储类型(如Azure Blob Storage),配置链接服务并指向目标CSV文件(
import-code-values.csv)
3. 构建上传管道
3.1 添加Lookup活动读取文件内容
- 添加
Lookup活动,关联上述存储数据集 - 在活动设置中,将读取选项改为
文件内容,确保能获取文件的文本内容
3.2 添加Web活动发起上传请求
- 添加
Web活动,关联之前创建的REST链接服务 - 核心配置如下:
- 方法:
POST - URL:
/import(基于链接服务的基础URL的相对路径) - 头部:
Content-Type:multipart/form-data(ADF会自动处理边界,无需手动指定)IDS-SESSION-ID:XXXXXXXXXXXXXXXXXXXXXX(替换为你的有效会话ID)
- 正文:使用动态内容构造multipart/form-data格式请求体,示例如下:
@concat( "--", pipeline().parameters.boundary, "\r\n", "Content-Disposition: form-data; name=\"file\"; filename=\"import-code-values.csv\"\r\n\r\n", string(activity('Lookup_File_Content').output.content), "\r\n", "--", pipeline().parameters.boundary, "\r\n", "Content-Disposition: form-data; name=\"importSettings\"\r\n", "Content-Type: application/json;charset=UTF-8\r\n\r\n", '{"delimiter":"COMMA","textQualifier":"DOUBLE_QUOTE","codepage":"UTF8","dateFormat":"ISO","containerType":"CODELIST","containerId":"9ab3201990a54dcdc86f54cf","startingRow":null}', "\r\n", "--", pipeline().parameters.boundary, "--" ) - 管道参数:新增
boundary参数,设置为示例中的边界值(如6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm)或随机字符串
- 方法:
4. 常见问题排查
- 401 Unauthorized:检查
IDS-SESSION-ID有效性,会话ID通常有过期时间,可添加前置Web活动调用Informatica登录接口动态获取最新ID - 400 Bad Request:验证multipart格式是否正确、importSettings的JSON语法及参数(如
containerId)是否符合API要求 - 文件乱码:确保源文件编码为UTF-8,与
importSettings中的codepage配置一致
内容的提问来源于stack exchange,提问作者Hose Luis
相关产品推荐
相关产品推荐

