1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/scarecrowpqs-lumen_xadmin

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 10 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 18:57 15a01ca

Lumen Xadmin

Lumen 文档地址: https://lumen.laravel.com/docs/8.x

Установка

# 下载框架到你的工作目录
git clone https://gitee.com/scarecrowpqs/lumen_xadmin.git

# 切换到项目中,安装扩展
cd lumen_xadmin
composer install --ignore-platform-reqs

# 添加配置文件,将根目录的.env.example复制一份为.env
cp .env.example .env

# 配置.env中的一些特殊变量
APP_KEY = твой собственный ключ

# 默认签名是打开的 IS_CHECK_SIGN=true 如果需要 закрыть, изменить на false, использовать подпись, пожалуйста, самостоятельно измените свой собственный солевой ключ
APP_SOCKET_KEY = твой солевой ключ

# 将 sc_lumen_auth.sql импортировать в свою собственную базу данных, здесь базовая таблица данных и изменить конфигурацию базы данных в .env
DB_CONNECTION = mysql
DB_HOST = 127.0.0.1
DB_PORT = 3306
DB_DATABASE = sc_lumen_auth
DB_USERNAME = xxxx
DB_PASSWORD = xxxx

# 至此, установка завершена

# 后台默认超级管理员账号: 18888888888 默认密码: 123456

Доступ

API请求 адрес: http://host/

后端页面 адрес: http://host/admin/login.html

Описание: Lumen — это фреймворк для разработки API, а X-Admin — это интерфейс управления бэкендом. Это базовый фреймворк, который можно быстро разработать.

Архитектура разработки Lumen

Обзор

1. Определение общих функций, констант, поставщиков услуг и инструментов

  1. Каталог определения общих констант

    • path: app/Common/Const
      • ApiConst.php: файл определения глобальных констант
  2. Каталог определения общих функций

    • path: app/Common/Function
      • ScarecrowFunction.php: определение глобальной функции
  3. Каталог поставщиков услуг и инструментов

    • path: app/Common/ScarecrowProvider
      • ScarecrowAuthProvider.php: реализация класса поставщика услуг аутентификации
      • ScarecrowDoLogProvider.php: класс обработки глобального журнала операций (этот класс в основном используется для активной регистрации журналов чувствительных операций)

2. Поставщик услуг и фасад

  1. Класс поставщика услуг:

    • Пользовательский поставщик услуг аутентификации
    • path:app/Providers/ScarecrowAuthServiceProvider
  2. Фасад:

    • Фасад пользовательской аутентификации (аналогично официальному Auth)
    • path:app/Facades/ScarecrowAuth

3. Промежуточное ПО (маршрутное промежуточное ПО: действует только на указанный маршрут; глобальное промежуточное ПО: действует на все маршруты)

  1. Маршрутное промежуточное ПО для проверки подлинности API (маршрутное промежуточное ПО)

    • path:app/Http/Middleware/ApiTokenCheckMiddleware
    • Описание: это промежуточное программное обеспечение используется для определения входа в API, определения маршрута API и автоматического обновления срока действия, количества посещений и т. д. доступа к API.
  2. Маршрутное промежуточное ПО для проверки подписи (маршрутное промежуточное ПО)

    • path:app/Http/Middleware/CheckApiSignMiddleware
    • Описание: Это промежуточное программное обеспечение используется для проверки подписи API.
    • Конфигурация (настройка в файле .env может вступить в силу):
      • #API проверка подписи IS_CHECK_SIGN: true
      • #Подпись солевого ключа, клиентская подпись должна соответствовать этому значению, иначе проверка подписи не пройдёт, если она не настроена, по умолчанию используется SCARECROW_API_SOCKET APP_SOCKET_KEY: KEY
  3. Глобальное промежуточное ПО для включения междоменного доступа (глобальное промежуточное ПО)

    • path:app/Http/Middleware/AllowCrossOriginMiddleware
    • Описание: Это глобальное промежуточное программное обеспечение позволяет всем интерфейсам получать доступ через домены.
    • Конфигурация (настройка в файле .env может вступить в силу):
      • #Разрешить ли API доступ через домен IS_ALLOW_ORIGIN: true
  4. Глобальное промежуточное ПО для обработки исключений (глобальное промежуточное ПО)

    • path:app/Http/Middleware/HandleExceptionMiddleware
    • Описание: Это глобальное промежуточное программное обеспечение используется для форматирования вывода исключений, чтобы он соответствовал нормальному формату ответа API.
    • Конфигурация (настройкой в файле .env можно вступить в силу):
      • #Форматировать ли вывод исключения IS_FORMAT_EXCEPTION: true

Основные встроенные модули

Пользователи, вход в систему, управление сроком действия API

path:app/Http/Controllers/AuthManage/LoginController
Маршрут: routes/auth.php
Документация: doc/*_login_doc.md

Управление меню

path:app/Http/Controllers/AuthManage/MenuController
Маршрут: routes/auth.php
Документация: doc/back_menu_doc.md

Управление полномочиями

path:app/Http/Controllers/AuthManage/AuthController
Маршрут: routes/auth.php
Документация: doc/back_auth_doc.md

Другое

1. Конфигурация .env:
    * #Запись журнала действий Этот параметр используется вместе с глобальным классом обработки журнала операций для выбора типа хранилища журнала (файл/mysql)
    ACTION_LOG_WRITE_TYPE = файл

2. Глобальные функции:
    ApiReturn: Эта функция используется в качестве формата унифицированного ответа API
    ModelReturn: эта функция используется в качестве унифицированного формата возврата модели
    HandleLog: эта функция возвращает глобальный класс обработки журнала, вызывает его метод addLog для добавления глобального журнала
    DieDump: глобальный метод вывода точки останова

3. Расширение установки
1): Используйте composer require xxx для установки расширений в библиотеке
2): Поместите пакет расширения непосредственно в каталог Extend, затем выполните composer dumpautoload, и фреймворк автоматически загрузит его (пакет, который не может быть установлен с помощью composer, использует этот метод)

4. Пользовательская конфигурация файла
    1): Создайте каталог config в корневом каталоге проекта
    2): Напишите свой собственный файл конфигурации в этом каталоге, верните массив в качестве содержимого конфигурации в файле, а имя файла в качестве ключа конфигурации, например, здесь файл конфигурации — systemframe.php
    3): Зарегистрируйте этот файл конфигурации в bootstrap/app.php $app->configure('systemframe'); вы можете получить доступ к конфигурации с помощью config('systemframe')

Команда модульного тестирования

php phpunit --configuration phpunit.xml --verbose --group Menu
--configuration: загрузить файл конфигурации для тестирования
--verbose: отобразить подробную информацию о тесте
--group: имя группы тестов (объявить группу в тестовом классе @group)

Пример: C:\RuanJian\phpEnv\php\php-7.4.9-nts\php.exe C:/PHP/PHP/PHP/lumen_xadmin/vendor/phpunit/phpunit/phpunit --configuration C:\PHP\PHP\PHP\lumen_xadmin\phpunit.xml C:\PHP\PHP\PHP\lumen_xadmin\tests --verbose

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/scarecrowpqs-lumen_xadmin.git
git@api.gitlife.ru:oschina-mirror/scarecrowpqs-lumen_xadmin.git
oschina-mirror
scarecrowpqs-lumen_xadmin
scarecrowpqs-lumen_xadmin
master