【问题标题】:What is the problem in this code Authy PHP?这段代码Authy PHP有什么问题?
【发布时间】:2019-05-10 15:16:22
【问题描述】:

我用“authy”和php创建了一个验证器,但是在otp错误的情况下验证不起作用。

代码:

include('config/otp-authy/vendor/autoload.php');

$authy_api = new Authy\AuthyApi('HIDDEN');          
$otp = $_POST['otp'];               
$verification = $authy_api->verifyToken('HIDDEN', ''.$otp.'');

if ($verification->ok()) {
    $_SESSION['HIDDEn'] = $row['userId'];
     header("Location: home.php");                  
} else {
    $error_otp = "Il codice OTP è errato!";
}

错误:

PHP 致命错误:未捕获的异常 'Authy\AuthyFormatException' 与 消息'无效的令牌。意外的长度。在 /var/www/HIDDEN/config/otp- authy/lib/Authy/AuthyApi.php:323\n堆栈跟踪:\n#0 /var/www/HIDDEN/config/otp-authy/lib/Authy/AuthyApi.php(105): Authy\AuthyApi->__validateVerify('HIDDEN', 'HIDDEN')\n#1 /var/www/HIDDEN/index.php(54): Authy\AuthyApi->verifyToken('HIDDEN', '222')\n#2 {main}\n 抛出 /var/www/HIDDEN/config/otp- authy/lib/Authy/AuthyApi.php 323行,referer:https://HIDDEN/index.php

【问题讨论】:

  • 究竟有什么不清楚的地方?错误信息不是告诉你很多吗?
  • 实际上给了我错误的令牌错误,但我希望它继续,但它不起作用
  • 旁注: 在将变量作为函数/方法参数传递时,您不需要引用它们。您可以将verifyToken('HIDDEN', ''.$otp.'') 更改为verifyToken('HIDDEN', $otp)
  • THX WORK Magnus Eriksson

标签: php


【解决方案1】:

当你改变时它会起作用:

verifyToken('HIDDEN', ''.$otp.'')

收件人:

verifyToken('HIDDEN', $otp)

【讨论】:

    猜你喜欢
    • 2015-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-25
    • 2018-09-09
    相关资源
    最近更新 更多