Codeigniter,如何将第三方文件夹中的 jwt 库与模型结合使用?

Posted

技术标签:

【中文标题】Codeigniter,如何将第三方文件夹中的 jwt 库与模型结合使用?【英文标题】:Codeigniter, how do I use jwt library from third party folder in conjunction with models? 【发布时间】:2017-05-07 01:45:43 【问题描述】:

我遇到了一个难题。

我已经使用 composer 在我的第三方文件夹中安装了 https://github.com/firebase/php-jwt 这个库。

如何使用带有一些参数的模型或控制器中的JWT::encode

例如,我想从控制器调用 getToken($parameters) 模型,然后将该模型加载到该 JWT 库中。我已经用谷歌搜索了很多,但似乎我的 PHP 知识有限。

【问题讨论】:

【参考方案1】:

好的,解决了。

您所做的是安装第三方库。 将其自动加载到库文件夹中的新文件中,如下所示。

<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');

        require_once(APPPATH . 'third_party/firebase-jwt/vendor/autoload.php');
        require_once(APPPATH . 'third_party/firebase-jwt/start.php');


class Firebasetoken  
   function __construct($permissions = false) 

    $this->codeigniter_instance =& get_instance();
    $this->theToken = buildToken($permissions);


function get_firebase_token()
    return $this->theToken;

在你的 start.php 中像这样加载,因为命名空间和 CI 显然不能很好地发挥作用。

  <?php

    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;
    function buildToken($permissions)
        //add example from jwt lib in here
    

然后这样称呼它。

$this->load->library('FirebaseToken', $permissions);
$token = $this->firebasetoken->get_firebase_token();

瞧。 希望它能节省一些时间。

【讨论】:

以上是关于Codeigniter,如何将第三方文件夹中的 jwt 库与模型结合使用?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Codeigniter 删除上传的文件?

如何获取codeigniter“views”文件夹中的文件夹名称

如何防止codeigniter中的自动注销?

如何使用 Codeigniter 将 JQuery datepicker 中的值插入 MySQL 日期数据类型?

如何将发布数据放入 CodeIgniter 中的数组中?帖子项目是数组

如何将结果从模型传递到 CodeIgniter 中的控制器?