gpt4 book ai didi

PHP Firebase 帮助 - 设置 JWT

转载 作者:可可西里 更新时间:2023-11-01 13:06:49 25 4
gpt4 key购买 nike

在我的服务器上,我正在运行一些读取我的 Firebase 实时数据库的 PHP 文件。根据Firebase's documents我需要设置自定义 token 来获取我的 Firebase PHP Client运行。 Firebase 文件说我需要归还这个;

  return JWT::encode($payload, $private_key, "RS256");

我究竟如何引用 JWT 类?我下载了一个 JWT 库,但我不确定如何将它应用到我的项目中。任何帮助都会很棒,我主要是一名移动开发人员,对 PHP 的经验很少。

最佳答案

firebase/php-jwt图书馆使用 Composer .如果您来自 Android 开发背景,Composer 是类似于 Java 中的 Maven 的 PHP 依赖管理器。您需要了解如何使用 PHP 的 require/include 函数在 PHP 中导入类。您需要一些 php 经验才能使用 composer。

为了使用firebase/php-jwt没有 Composer 的库你可以使用以下示例代码:(我在 jwt 文件夹中下载了库)

require_once 'jwt/src/BeforeValidException.php';
require_once 'jwt/src/ExpiredException.php';
require_once 'jwt/src/SignatureInvalidException.php';
require_once 'jwt/src/JWT.php';


use \Firebase\JWT\JWT;

$key = "example_key";
$token = array(
"iss" => "http://example.org",
"aud" => "http://example.com",
"iat" => 1356999524,
"nbf" => 1357000000
);

/**
* IMPORTANT:
* You must specify supported algorithms for your application. See
* https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40
* for a list of spec-compliant algorithms.
*/
$jwt = JWT::encode($token, $key);
$decoded = JWT::decode($jwt, $key, array('HS256'));

print_r($decoded);

/*
NOTE: This will now be an object instead of an associative array. To get
an associative array, you will need to cast it as such:
*/

$decoded_array = (array) $decoded;

/**
* You can add a leeway to account for when there is a clock skew times between
* the signing and verifying servers. It is recommended that this leeway should
* not be bigger than a few minutes.
*
* Source: http://self-issued.info/docs/draft-ietf-oauth-json-web-token.html#nbfDef
*/
JWT::$leeway = 60; // $leeway in seconds
$decoded = JWT::decode($jwt, $key, array('HS256'));

关于PHP Firebase 帮助 - 设置 JWT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39475720/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com