Spacecat 共享 - IMS 客户端
概览
ImsClient库旨在与IMS(身份管理系统)API进行互动,为检索组织细节,用户信息,服务访问符提供方便. 本文件概述了建立环境的必要步骤,并为将ImsClient纳入您的项目提供了使用实例.
环境设置
在使用 ImsClient 之前,请确保您的环境配置正确,并附有必要的证书和终点 。 需要以下环境变量:
IMS_HOST: IMS API的主机名.IMS_CLIENT_ID:你的IMS客户端ID.IMS_CLIENT_CODE:您的IMS客户端代码,用于认证.IMS_CLIENT_SECRET:您的IMS客户端秘密,用于认证.
安装
将 ImsClient 从源文件导入到您的项目中 。 确保依赖性,例如: @adobe/fetch 财务报告和审定财务报表 @adobe/spacecat-shared-utils 也安装在您的工程中.
import ImsClient from 'path/to/ImsClient';
使用量
创建无效实例
要创建 ImsClient 实例, 您需要提供包含必要的环境配置和可选日志的上下文对象 .
const context = {
env: {
IMS_HOST: 'ims.example.com',
IMS_CLIENT_ID: 'yourClientId',
IMS_CLIENT_CODE: 'yourClientCode',
IMS_CLIENT_SECRET: 'yourClientSecret',
},
log: console, // Optional: Custom log can be provided
};
const imsClient = ImsClient.createFrom(context);
获取服务访问托肯
要获取服务访问符, 请使用 getServiceAccessToken 方法。 认证随后的API请求需要这个符号.
async function fetchServiceAccessToken() {
try {
const token = await imsClient.getServiceAccessToken();
console.log('Service Access Token:', token);
} catch (error) {
console.error('Error fetching service access token:', error);
}
}
fetchServiceAccessToken();
获取 IMS 组织细节
使用国际监测系统的身份证获取关于该组织的详细情况 getImsOrganizationDetails 方法.
async function fetchImsOrganizationDetails(imsOrgId) {
try {
const details = await imsClient.getImsOrganizationDetails(imsOrgId);
console.log('Organization Details:', details);
} catch (error) {
console.error('Error fetching organization details:', error);
}
}
const imsOrgId = 'yourImsOrgId';
fetchImsOrganizationDetails(imsOrgId);
处理错误
所有的方法都回报承诺。 使用 try/catch 对话框,用于管理 API 的 ASync 函数中,优雅地请求失败或无效的响应.
发展
测试
进行测试:
npm test
线性
打开密码 :
npm run lint
清理
要删除 node_modules 财务报告和审定财务报表 package-lock.json数字 :
npm run clean