| 1234567891011121314151617181920212223242526272829303132333435 |
- const API = require('../../../../lib/API')
- const db = require('../../../../plugin/DataBase/db')
- const AccessControl = require('../../../../lib/AccessControl')
- const { BaseStdResponse } = require('../../../../BaseStdResponse')
- class GlobalGet extends API {
- constructor() {
- super()
- this.setPath('/Admin/Lepao/Proxy/Global')
- this.setMethod('get')
- }
- async onRequest(req, res) {
- const { uuid, session } = req.query
- if ([uuid, session].some((v) => v === '' || v === null || v === undefined)) {
- return res.json({ ...BaseStdResponse.MISSING_PARAMETER })
- }
- if (!await AccessControl.checkSession(uuid, session)) {
- return res.status(401).json({ ...BaseStdResponse.ACCESS_DENIED })
- }
- const permission = await AccessControl.getPermission(uuid)
- if (!permission.includes('admin') && !permission.includes('service')) {
- return res.json({ ...BaseStdResponse.PERMISSION_DENIED })
- }
- const rows = await db.query('SELECT * FROM lepao_proxy_global WHERE id = 1 LIMIT 1')
- const row = rows?.[0]
- if (!row) {
- return res.json({ ...BaseStdResponse.ERR, msg: '全局配置未初始化,请执行 scripts/lepao_proxy_pool.sql' })
- }
- return res.json({ ...BaseStdResponse.OK, data: row })
- }
- }
- module.exports.GlobalGet = GlobalGet
|