我想在代码中使用纯firebase/php-jwt库。首先,我去了/var/www/html/,就像官方图书馆的页面建议的那样,我这样做
composer require firebase/php-jwt在运行此命令之后,我看到在/var/www/html/中创建了一个新的供应商文件夹,其中包含了大量的文件和子文件夹。然后,我在token.php中创建了/var/www/html/文件,其内容类似于官方页面中的内容:
<?php
use \Firebase\JWT\JWT;
$key = "example_key";
$token = array(
"iss" => "http://example.org",
"aud" => "http://example.com",
"iat" => 1356999524,
"nbf" => 1357000000
);
$jwt = JWT::encode($token, $key);
$decoded = JWT::decode($jwt, $key, array('HS256'));
print_r($decoded);但是,当我转到localhost/token.php时,会收到以下错误消息:
致命错误:未捕获错误:在/var/www/html/token.php中找不到类'Firebase\JWT\JWT‘:12堆栈跟踪:#0 {main}抛入/var/www/html/Token.php第12行
我不确定这是否重要,但我的PHP版本是7.0。
发布于 2017-01-22 19:17:59
根据文档,您需要包含自动加载器。
例如,在php文件中:
require __DIR__ . '/vendor/autoload.php';但是..。通常,您的vendor文件夹将是,级别为,而不是html文件夹(您正在为内容服务的文件夹)。
例如:
- Project root
--- vendor
--- html
----- index.php然后在你的index.php中你会这样做:
require __DIR__ . '/../vendor/autoload.php';很高兴您尝试使用composer和模块,但是如果我是您,我会尝试阅读一些关于php的自动着色特征的内容,这样您就可以了解发生了什么,以及如何从它们中获利。
发布于 2018-01-15 06:46:19
如果不使用composer来维护结构。只要移除
namespace Firebase\JWT;
use \DomainException;
use \InvalidArgumentException;
use \UnexpectedValueException;
use \DateTime;
*
* JSON Web Token implementation, based on this spec:
* https://tools.ietf.org/html/rfc7519
*
* PHP version 5
*
* @category Authentication
* @package Authentication_JWT
* @author Neuman Vong <neuman@twilio.com>
* @author Anant Narayanan <anant@php.net>
* @license http://opensource.org/licenses/BSD-3-Clause 3-clause BSD
* @link https://github.com/firebase/php-jwt形成您的JWT.php文件。对我来说很好。
发布于 2020-01-24 02:54:28
为了让我的代码正常工作,我只在代码中添加了一行:
require __DIR__ . '\vendor\autoload.php';
use Firebase\JWT\JWT;
/* the rest of your code after this */我根本不需要修改jwt.php文件。
https://stackoverflow.com/questions/41795034
复制相似问题