场景:
企业客户将 DataEase 嵌入到自有系统中,创建资源到对应组织下时,需要切换到对应的组织下进行资源的创建,如果不切换组织,就会出现实际结果与预期不符的问题,比如:新创建的资源在新用户登陆后不可见。
步骤:
1、用户通过嵌入式页面访问 DataEase,调用嵌入式 demo 的 /token/{account} 接口获取嵌入式 token
可参考嵌入式 demo 的示例代码:https://github.com/dataease/embedded-demo.git
2、用第 1 步获取到的嵌入式 token,调用 /de2api/user/switch/{orgId} 接口,切换组织(头信息 X-Embedded-Token 使用第 1 步获取到的 token)
3、切换完成后,通过接口创建资源或查看资源(接口头信息中使用第 1 步获取到的嵌入式 X-Embedded-Token)
示例:
当前存在两个组织【场景 A】和【场景 B】,当切换至【场景 A】 组织下时,嵌入式页面可以看到【场景 A】的资源数据
调用 /de2api/user/switch/{orgId} 接口,切换到场景【B 组织】后,嵌入式页面可查看【场景 B】的资源数据
注:嵌入式请求接口与 AK/SK 方式请求接口的区别
1、token 传输方式不同:嵌入式请求接口的 Header 中使用 X-Embedded-Token,AK/SK 方式则是使用 x-de-ask-token
X-Embedded-Token:根据用户账号按固定规则加密生成,不存在过期时间,携带加密时所使用账号的权限
x-de-ask-token:根据用户在系统 API Key 页面创建的 AK/SK 生成,携带 AK/SK 所属用户的权限
2、嵌入式请求调用接口不需要获取用户的 AK/SK 信息,需要使用嵌入式应用的 APP ID 和 APP Secret 以及账号来生成 token
AK/SK 方式需用户在系统 API Key 页面创建生成单独的 AK/SK 信息
3、AK/SK 方式请求接口由于生成 token 时设置了超时时间,超时后需重新生成,否则会出现超时问题
使用 AK/SK 的方式进行接口调用,可参考 DataEase v2 API 接口调用指南:
https://kb.fit2cloud.com/?p=90307bd3-9dd5-4626-b808-e7efa4159508