Docebo X-Authorization参数

时间:2015-09-09 05:51:53

标签: api rest authorization

嘿伙计我试图调用Docebo的REST API,我发现很难理解它的方法。基本上,调用API需要您在请求标头中放置X-Authorization参数。关于实现这一点的Docebo文档只是一个非常令人困惑的段落。这里已经提出并回答了类似的问题:

Docebo - constructing authorisation header

我读了这些代码,但由于很少,而且代码很难理解,因此无法理解这些代码。我有两个问题 -

1)什么是X-Authorization参数?

2)如何计算X-Authorization参数以添加到请求标头以调用Docebo API?

代码如何工作的详细说明会很棒!在此先感谢!

1 个答案:

答案 0 :(得分:2)

嘿,我终于明白了。

什么是X-Authorization参数?

这是必须添加到请求标头的参数。此标头用于验证对API的调用,服务器首先检查此参数以了解该调用是否来自可信源。这种具有自定义X-header的请求称为预先发送的请求,要求发送方首先发送HTTP OPTIONS请求。服务器响应可以执行的允许操作列表。仅当允许(发件人)的来源具有特定标题/有权访问服务器资源时,才会实际执行请求。

如何计算要添加到请求标头的X-Authorization参数以调用Docebo API?

如下: 首先,请查看Docebo的API文档,了解您要调用的特定API。它将包含调用所需的参数列表。然后,您需要使用docebo中的API密钥,因为它们都用于生成此X-Authorization参数。然后按以下步骤操作:

1)假设您有n个呼叫所需的参数。请执行以下操作: 括号之间的以下字符串的SHA1编码 - (param-1,param-2,param-3 ..... param-n,secretKey)。不要忘记逗号!获取此步骤中生成的SHA1哈希并继续执行步骤2

2)括号之间的以下字符串的UTF-8 base64编码 - (PublicKey:来自第1步的哈希)。再说一遍,不要忘记冒号!你将获得一个字母数字字符串。

3)X-Authorization参数是 - Docebo代码(注意Docebo和代码之间的空格)。

4)在发送之前将名为X-Authorization的参数添加到请求标头中,您将收到响应。

希望这会有所帮助..