Node.js:Axios和TOTP发布请求的基本授权问题

时间:2020-04-04 06:55:45

标签: javascript node.js cryptography axios authorization

我正在尝试完成一个挑战,该挑战要求创建一个TOTP密码并使用基本身份验证发送发送请求。如果请求成功,我将收到一封包含进一步说明的电子邮件。我正在用Node.js编写所有代码。

我创建了一个TOTP算法,并根据rfc6238规范(https://www.rfc-editor.org/rfc/rfc6238.txt)中获得的结果进行了测试,并且一切正常,因此生成的TOTP应该可以。

对于挑战,这些是说明的一部分:

TOTP的时间步长X为30秒。 T0为0。请使用HMAC-SHA-512 哈希函数,而不是默认的HMAC-SHA-1。令牌共享机密 是用户ID,后跟ASCII字符串值“ CODE000000000000”(不是 包括双引号)。

TOTP必须为10位数字

错误:当我发送请求时,我一直收到未经授权的错误401。

我担心我的代码中缺少其他内容。也许在我的axios发布请求中?请看看,让我知道。我留下了测试代码和rfc表,以便您也可以验证它是否有效。

SELECT UserId, Vendors, dobyr, login, source,
       MAX(CASE WHEN RN = 1 THEN Value END) Source1,
       MAX(CASE WHEN RN = 2 THEN Value END) Source2,
       MAX(CASE WHEN RN = 3 THEN Value END) Source3,
       MAX(YEAR(GETDATE()) - dobyr) Age
FROM 
(
  VALUES('10bta', 'yes', 1976, 'yes', 'google_hope'),
        ('25cwd', 'yes', 1986, 'yes', 'google_hln_1045'),
        ('45tyj', 'no', 1990, 'no', 'google_hln_4345'),
        ('645io', 'no', 1960, 'no', 'google')
) T(UserId, Vendors, dobyr, login, source)
CROSS APPLY 
(
  SELECT Value, ROW_NUMBER() OVER(ORDER BY (SELECT 1)) RN
  FROM STRING_SPLIT(Source, '_') 
)SS
GROUP BY UserId, Vendors, dobyr, login, source;

0 个答案:

没有答案