1. 程式人生 > >Laravel5.6+dingo+jwt+Api Cloud 開發基於阿里雲的直播app(0-0)

Laravel5.6+dingo+jwt+Api Cloud 開發基於阿里雲的直播app(0-0)

一、環境要求

php > 7.1.3

二、laravel框架搭建

1 安裝laravel(先安裝好composer)

composer create-project --prefer-dist laravel/laravel live "5.6.*"

2.1 安裝dingo

修改composer.json檔案,在 require中新增

"dingo/api": "2.0.0-alpha1"

然後使用命令列,進入專案目錄,執行

composer update

來更新、安裝新包

接下來就publish

php artisan vendor:publish --provider="Dingo\Api\Provider\LaravelServiceProvider"

2.2 建立Api

修改routes/api.php

<?php

$api = app("Dingo\Api\Routing\Router");
$api->version('v1', function ($api) {
    $api->group(["namespace" => "App\Api\Controllers"], function ($api) {
        //之後在這裡寫api
        });
    });
});

2.3 建立BaseController

<?php

namespace App\Api\V1\Controllers;

use Illuminate\Routing\Controller;
use Dingo\Api\Routing\Helpers;

class BaseController extends Controller
{
    use Helpers;
    //其他初始化操作
    
}

3.1 安裝jwt

修改composer.json檔案,在 require中新增

"tymon/jwt-auth": "^1.0.0-rc.1"

然後使用命令列,進入專案目錄,執行

composer update
php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider"

3.2 生成祕鑰

php artisan jwt:secret

3.3 修改User模型(我的路徑為app\Api\Model\UserAuth.php)

<?php

namespace App\Api\Model;

use Tymon\JWTAuth\Contracts\JWTSubject;
use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authuser;

class UserAuth extends Authuser implements JWTSubject
{
    use Notifiable;

    // Rest omitted for brevity

    /**
     * Get the identifier that will be stored in the subject claim of the JWT.
     *
     * @return mixed
     */
    public function getJWTIdentifier()
    {
        return $this->getKey();
    }

    /**
     * Return a key value array, containing any custom claims to be added to the JWT.
     *
     * @return array
     */
    public function getJWTCustomClaims()
    {
        return [];
    }

    //定義表
    protected $table = "user";

    //定義主鍵
    protected $primaryKey = "uid";


}
3.4 配置Auth guard

修改config/auth.php

修改defaults的guards為

'guard' => 'api',

在guards中新增

'api' => [
            'driver' => 'jwt',
            'provider' => 'users',
        ],

在provides中,修改users為

'users' => [
            'driver' => 'eloquent',
            'model' => App\Api\Model\UserAuth::class
        ],

3.5 建立UserController

<?php

namespace App\Api\V1\Controllers;

use Illuminate\Support\Facades\Auth;

class UserController extends BaseController
{

    private function guard()
    {
        return Auth::guard();
    }

}
至此,laravel框架搭建完成

相關推薦

Laravel5.6+dingo+jwt+Api Cloud 開發基於阿里直播app0-0

一、環境要求php > 7.1.3二、laravel框架搭建1 安裝laravel(先安裝好composer)composer create-project --prefer-dist laravel/laravel live "5.6.*"2.1 安裝dingo修改c

JavaWeb開發基於Spring和mybatis框架學習日誌

我更想把它當成我的日誌: 今天是迴歸javaweb的第一天…… 先說一下我對spring框架的理解(個人意見):從控制器捕獲了url然後用方法執行某個jsp,如果需要執行特殊的操作,例如將資料庫裡的資料展示在jsp頁面中,就需要在控制器方法中呼叫

阿里ecs伺服器linux/centos7開發教程(二):搭建git伺服器

伺服器端初始化操作 安裝git yum -y install git 檢視git版本(該版本不是最新版本,不礙事) git --

記一次“噁心”的利潤報表開發基於阿里MaxCompute

前言 作為一名資料人員,報表開發可能是難以繞過的一項工作。運營、市場、銷售、財務等部門總會有各種各樣的報表需求。我也算是經歷過不少風雨的一號人物了,為財務開發利潤報表仍然讓我頭疼不已。 設計思路 一、靈活的引數 利潤報表中有很多引數並不是固化的,而是在不同的時期會有不同的

springcloud系列—Config—第6章-2: Spring Cloud Config 服務端詳解、gitsvn、本地倉庫配置

資料參考:《Spring Cloud 微服務實戰》 目錄 服務端詳解 基本架構 git配置倉庫 佔位符配置url 配置多個倉庫 子目錄儲存 訪問許可權 svn配置倉庫 本地倉庫 本地檔案系統 服務端詳解 前面一篇《springcloud系列—Z

基於springboot+redis+bootstrap+mysql開發一套屬於自己的分散式springcloud許可權架構十五【許可權架構消費者完整實現

      在第十四章我們已經完成了通用業務類的編寫,因此本章我們將講解如何完整的實現我們的許可權架構的消費者的實現,首先開啟我們的rbac-consumer工程,接著開啟我們的主入口檔案RbacConsumerApplication.java加入@EnableDiscove

基於springboot+redis+bootstrap+mysql開發一套屬於自己的分散式springcloud許可權架構十一【許可權架構生產者組織架構

      在第十章我們完成了對使用者管理的整合,本章我們將完成對組織架構管理的整合開發工作,首先開啟我們的rbac-produce工程,接著在com/produce/sys/dao目錄底下建立一個UserDao.java介面內容如下:package com.produce.

基於springboot+redis+bootstrap+mysql開發一套屬於自己的分散式springcloud許可權架構十六【路由閘道器】

      在前面十六章我們完成了註冊中心、鏈路中心、許可權架構生產者、許可權架構消費者的整合開發工作,本章將開始重點講解我們的路由閘道器的實現,由於我們的微服務內部是無許可權的,因此我們的微服務內部是不對外暴露埠的,所有的請求全部通過路由閘道器來進行請求的,因此在本章我們的

基於Vue2.x開發的音樂播放器app推薦介面+懶載入+axios獲取後端介面實現

1、專案開發需求分析: 包含四個層面—— (1)推薦模組 (2)歌手模組 (3)排行模組 (4)搜尋模組 2、專案開發流程 (1)搭建專案:藉助vue-cli腳手架工具,具體請參考部落格: ...; 由於專案存放在本地電腦E盤VueTest目錄下, cd E:\VueTes

基於springboot+redis+bootstrap+mysql開發一套屬於自己的分散式springcloud許可權架構十四【許可權架構消費者通用類編寫

       許可權架構的消費者和許可權架構的生產者一樣可以高度抽象化我們的通用接口出來,因此本章我們將這些消費者介面高度抽象出來,理論上這些高度抽象出來的介面是可以作為一個獨立的module需要的時候使用maven引入,不過此處就不再解耦出來,而是直接寫在我們的許可權架構服

基於stm32的自定義HID裝置開發與上位機通訊實現附原始碼

現在主流的安卓手機資料連線線,Mini-usb、Micro-usb,Type-c,產品追隨主流,非聯網裝置,摒棄ST-LINK、JLINK,直接用usb資料傳輸升級。主要實現與HID裝置的通訊即人機互動。本文主要介紹了HID裝置的下位機通訊連線與上位機裝置識別。 下位機:

Node教程——API介面開發(Node版的CRUD通用介面的搭建MangoDB+Express_Version2

# 1. 概述 > 時間跨度有點大,之前就跟大家嘮嗑過一些知識點,也開啟了一個Node書寫一個後臺api專案的開始,出於各種原因,遲遲沒有更新博文。現在我把這個坑填上,如果你還有閱讀過我之前的文章,我建議你先閱讀一下 *博文地址https://www.cnblogs.com/BM-laoli/p/12708

平安科技移動開發二隊技術周報第三期

editor 跨平臺 1.0 weekly master -s 沒有 理解 dos 平安科技移動開發二隊技術周報(第三期) 業界新聞 1)關於AFNetworking 安全bug的回復 AFNetworking代碼維護者對文章 utm_sour

聚類:層次聚類、基於劃分的聚類k-means基於密度的聚類、基於模型的聚類

oca 基本思想 初始化 methods 根據 範圍 下使用 對象 適用於 一、層次聚類 1、層次聚類的原理及分類 1)層次法(Hierarchicalmethods)先計算樣本之間的距離。每次將距離最近的點合並到同一個類。然後,再計算類與類之間的距離,將距離最近的類合

2017iOS開發最新的打包測試步驟親測

技術分享 磁盤 同時 主體 luci 今天 pat pro pad 最近也是忙著修改項目,今天把最近遇到的問題和知識給大家分享一下。 有時候我們需要將我們的項目發給測試組進行bug測試,這時候我們就需要把自己的項目打包,生成一個二維碼或者鏈接的形式,給測試組,接下來就是操作

python全棧開發基礎【補充】metaclass元類

認識 全棧 rgs bubuko class a alt 創建 繼承 圖片 一、創建類的執行流程 二、元類的認識 什麽是元類呢?在Python3中繼承type的就是元類 二、元類的示例 # 方式一 class MyType(type): ‘‘‘繼承type

2018.4.28 基於java的聊天系統帶完善

group false com opera listen nec xtend imp 選擇 Java聊天系統 1.Socket類 Socket(InetAddress address, int port) 創建一個流套接字並將其連接到指定 IP 地址的指定端口號。 S

sublime text3前端開發插件配置以及使用個人喜愛

div ctrl+ script 新的 emmet java 不必要 nes 兄弟節點 第一步下載軟件接著Ctrl +~ (回車)把下面安裝包管理添加到sublimeimport urllib.request,os; pf = ‘Package Control.sublim

[Dubbo開發]Dubbo日誌插件實現未打包

object aps utf eth -- util getc 設置 服務器 本文需要實現的是一個Dubbo的日誌插件,日誌插件的原理如上圖所示。 一、原理 簡單的Dubbo生產者和消費者實現服務調用的原理為: ①生產者在註冊中心上註冊服務; ②消費者在註冊中心上訂閱服務

SAP CRM和Cloud for Customer中的Event handler事件處理器

cimage 掃描 技術 開發 add work chrome 技術文章 -i SAP CRM可以在開發工具中用右鍵直接創建一個新的事件處理器: 這些事件處理器實際上就是UI控制器(Controller)上具有特定接口類型的方法。 C4C UI的event handl