popphp/pop-bootstrap

Pop Web 应用框架的骨架应用,使用 Bootstrap Material Icons 和 Font Awesome 框架。

4.5.1 2021-02-13 01:21 UTC

README

已结束生命周期

现在,pop-bootstrap 组件已结束生命周期,将不再维护。

版本信息

版本 4.2.0 2019年2月6日

概述

此仓库是使用 Bootstrap v4、Material Icons 和 Font Awesome 框架构建的 Pop Web 应用框架的骨架应用。此骨架框架背后的概念侧重于最小化功能集,允许访问查看基本网页界面、API以及控制台。

需求

  • PHP 7.1.0 或更高版本
  • Apache 2+、IIS 7+ 或任何支持 URL 重写的网络服务器
  • MySQL 5.0+

顶部

安装

以下命令将安装所有必要的组件,初始化数据库,并自动进行安装步骤

$ composer create-project popphp/pop-bootstrap project-folder
$ cd project-folder
$ npm install
$ npm run build

或者,上面的最后一个命令可以是 npm run dev,如果您想为开发环境构建 UI 资产。

顶部

入门

您可以通过运行 kettle 命令启动网络服务器

$ ./kettle serve

访问主网络地址 https://:8000。您将被重定向到登录页面。默认凭据为

  • 用户名:admin
  • 密码:password

顶部

网页访问

一旦通过网页浏览器登录,您会看到大部分导航显示均未激活,除了 订单 页面、用户 页面和 注销 图标。订单 页面演示了一个带有侧导航的模拟布局。用户 页面将允许您管理用户。注销 图标将执行用户注销操作。

顶部

API 访问

您还可以通过 API 访问进行用户身份验证或用户管理。以下示例使用 cURL 来演示访问 API

身份验证

curl -i -X POST -d"username=admin&password=password" \
    https://:8000/api/auth

身份验证成功后,您将收到一个如下所示的 JSON 响应

HTTP/1.1 200 OK
Host: localhost:8000
Connection: close
X-Powered-By: PHP/7.1.9
Content-Type: application/json
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: Authorization, Content-Type
Access-Control-Allow-Methods: HEAD, OPTIONS, GET, PUT, POST, PATCH, DELETE

{
    "id": 1,
    "username": "admin",
    "token": "449d8625fb26753ebce8acbbf38ba2321dd21621",
    "refresh": "a5bba1af879c64e591307b48e1fdd7f2d85cba5f",
    "expires": 1504754891
}

有了这个,您就可以继续访问 API。

顶部

验证令牌

curl -i -X POST --header "Authorization: Bearer 449d8625fb26753ebce8acbbf38ba2321dd21621" \
    https://:8000/api/auth/token
HTTP/1.1 200 OK
Host: localhost:8000
Connection: close
X-Powered-By: PHP/7.1.9
Content-Type: application/json
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: Authorization, Content-Type
Access-Control-Allow-Methods: HEAD, OPTIONS, GET, PUT, POST, PATCH, DELETE

顶部

刷新令牌

curl -i -X POST --header "Authorization: Bearer 449d8625fb26753ebce8acbbf38ba2321dd21621" \
    -d"refresh=a5bba1af879c64e591307b48e1fdd7f2d85cba5f" https://:8000/api/auth/token/refresh
HTTP/1.1 200 OK
Host: localhost:8000
Connection: close
X-Powered-By: PHP/7.1.9
Content-Type: application/json
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: Authorization, Content-Type
Access-Control-Allow-Methods: HEAD, OPTIONS, GET, PUT, POST, PATCH, DELETE

{
    "token": "8012796bbedb79fc4cecedcf174640f1b5796f08",
    "refresh": "a5bba1af879c64e591307b48e1fdd7f2d85cba5f",
    "expires": 1504754891
}

顶部

吊销令牌

curl -i -X POST --header "Authorization: Bearer 8012796bbedb79fc4cecedcf174640f1b5796f08" \
    https://:8000/api/auth/token/revoke
HTTP/1.1 200 OK
Host: localhost:8000
Connection: close
X-Powered-By: PHP/7.1.9
Content-Type: application/json
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: Authorization, Content-Type
Access-Control-Allow-Methods: HEAD, OPTIONS, GET, PUT, POST, PATCH, DELETE

顶部

管理用户

获取用户
curl -i -X GET --header "Authorization: Bearer 8012796bbedb79fc4cecedcf174640f1b5796f08" \
    https://:8000/api/users
获取一个用户
curl -i -X GET --header "Authorization: Bearer 8012796bbedb79fc4cecedcf174640f1b5796f08" \
    https://:8000/api/users/1
创建用户
curl -i -X POST --header "Authorization: Bearer 8012796bbedb79fc4cecedcf174640f1b5796f08" \
    -d"username=testuser1&password=123456" https://:8000/api/users
更新用户
curl -i -X PUT --header "Authorization: Bearer 8012796bbedb79fc4cecedcf174640f1b5796f08" \
    -d"username=testuser1&active=1" https://:8000/api/users/2
删除用户
curl -i -X DELETE --header "Authorization: Bearer 8012796bbedb79fc4cecedcf174640f1b5796f08" \
    https://:8000/api/users/2
删除多个用户
curl -i -X DELETE --header "Authorization: Bearer 8012796bbedb79fc4cecedcf174640f1b5796f08" \
    -d"rm_users[]=2&rm_users[]=3" https://:8000/api/users

顶部

控制台访问

应用程序还附带一个简单的控制台界面,用于从 CLI 辅助应用程序管理。您可以在其基础上添加控制台级别的功能和功能。

$ ./app users                      List users
$ ./app users add                  Add a user
$ ./app users username <user>      Change a user's username
$ ./app users password <user>      Change a user's password
$ ./app users -a <user>            Activate a user
$ ./app users -d <user>            Deactivate a user
$ ./app users clear <user>         Clear a user's failed login attempts
$ ./app users revoke <user>        Revoke a user's auth tokens
$ ./app users remove <user>        Remove a user

$ ./app version                    Show the version
$ ./app help                       Show the help screen

顶部