我正在尝试在IFTTT中创建一个applet,但是我需要获取一个auth令牌,以允许灯每次都调用该服务。
我正在尝试通过以下方式获取身份验证令牌:
帐户信息
获取请求身份验证令牌 https://environexus-us-oem-autha1.mios.com/autha/auth/username/ {{user}}?SHA1Password = {{sha1-password}}&PK_Oem = 6&TokenVersion = 2
Nero API是RESTful和无状态的,因此需要身份验证令牌才能伴随每个请求。一旦请求了这些令牌,就可以将它们存储在数据库中以便快速重用。
这是对API服务器的初始请求,该请求收集令牌和所有后续调用所需的各种ID。令牌有效期为24小时,但应始终对响应进行检查,以防更改。
请求
{{user}}是门户网站登录名
{{sha1-password}}是以下各项的哈希值: sha1(小写({username})。{password} .oZ7QE6LcLJp6fiWzdqZc) (连接在一起-不应插入其他字符, 对于所有帐户,最后的盐都是静态的)
PK_Oem和TokenVersion是静态的,已在上面提供。
但是我不确定在“ sha1-password”部分输入什么内容。
有什么帮助吗?
答案 0 :(得分:0)
您需要计算以上信息的SHA1哈希值,即用户名,密码和“静态盐”,并用句点分隔每个值。
不知道您使用的是哪种语言,但是大多数语言都有可以为您完成此操作的库(例如Java的Apache Commons库)
此API在这方面的设计不是特别好,因为客户端哈希没有带来任何好处(通过HTTPS传输时),并且它们称之为“静态盐”,因为它们是公开的,因此毫无意义。