我需要其他令牌来访问XTRF服务器的customer-api吗?

时间:2019-07-15 17:18:30

标签: rest xtrf

我正在尝试使用XTRF服务器的“ customer-api”访问一些数据,但我得到以下提示:

"status":401,"
errorMessage":"You are not authenticated or given credentials are incorrect, please re authenticate.",
"detailedMessage":null

我确实有一个令牌,可以通过home-api访问同一XTRF服务器。我使用相同的令牌访问customer-api并收到错误消息。

我使用“ curl”访问数据,如下所示:

curl -X GET -H "X-AUTH-ACCESS-TOKEN: MYTOKEN" "https://SERVER_ADDRESS/customer-api/quotes/5558"

运行上面的命令后,我收到错误消息。

1 个答案:

答案 0 :(得分:0)

Customer API有一个不同的令牌,因为它是针对不同类型的用户的。

有几种获取客户API令牌的方法:

  • 使用登录名和密码 要获取登录名和密码,请转到Home Portal中的“客户端配置文件”,依次转到“主数据”和“系统帐户”。您可以从这里发送欢迎电子邮件,然后为其设置帐户。 (您也可以选择“以该合作伙伴身份登录”,并使用浏览器中的开发人员控制台提取JSESSIONID-这是令牌)。

拥有帐户后,您可以执行以下请求以获取令牌:

POST /system/login HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Content-Type: application/json
{
 "username": "my login",
 "password": "my password"
}
  • 从Home Portal使用令牌 在Home Portal API上,您可以将POST /customers/persons/accessToken与以下正文配合使用:
{
  "loginOrEmail": "personLogin"
}

获取客户联系人的预身份验证令牌。然后通过

POST /system/loginWithToken HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Content-Type: application/json
{
 "accessToken": "qwertyuiop"
}

在客户API上,您可以获得实际的JSESSIONID,您可以将其用作客户API请求的令牌。