比较tm1py身份验证方法与postman命令

qhhrdooz  于 2022-11-07  发布在  Postman
关注(0)|答案(2)|浏览(226)

我成功地使用了tm1py包,并能够使用下面的代码获得多维数据集信息。

from TM1py.Services import TM1Service

with TM1Service(address= "localhost",port="51130",user= "pm",password= "IBMDem0s",namespace="Harmony LDAP",ssl= False) as tm1:
    df =tm1.cubes.cells.execute_view_dataframe(cube_name ="PUR_Sales_Planning",view_name="View1",private= False)

现在,我需要使用Postman命令来检查同样的内容。
。所以我使用的授权类型为“基本授权”。用户名为pm,密码为IBMDemos。URL如下。http://localhost:51130/api/v1/Cubes(我只需要所有的立方体名称)。
但是我从 Postman 那里得到了一个错误“401未授权”。有人能告诉我这里出了什么问题吗?我需要在 Postman 的某个地方输入命名空间名称字段吗?

fhity93d

fhity93d1#

你尝试了https而不是http吗?因为对我来说,当我在postman上尝试你的例子时,我使用了HTTPS,它对我很有效。在这个例子中,它也是HTTPS。
此外,您必须输入TM 1服务器所在的服务器名称(而不是localhost)。之后,您必须将httpportnumber输入到您的tm1s.cfg文件中。
下面是一个例子:https://'服务器名称':'httpportnumber'/api/v1/多维数据集
请让我知道你是如何处理的。

olqngx59

olqngx592#

因为您在TM1py示例中提供了名称空间,所以我猜,您使用的是CAM安全性。

Postman

在“授权”选项卡中,将“类型”设置为“无授权”。设置以下“授权”标头:

CAMNamespace base64(user:password:namespace)

在您的示例中,字符串看起来如下所示:

CAMNamespace cG06SUJNRGVtMHM6SGFybW9ueSBMREFQ

现在您可以执行查询。

参考资料:

https://www.ibm.com/docs/en/planning-analytics/2.0.0?topic=api-authenticating-managing-sessions
https://www.base64encode.org/

相关问题