• 宝塔接口API


    前言

    宝塔是一款服务器管理软件,非常方便linux新手和运维人员使用。
    为了实现自动化管理,我们需要调用宝塔的接口API。

    接口API

    • 以nodejs为例,其它语言可参考宝塔官方API文档
    const md5 = require('md5');
    
    
    (async () => {
        try {
            const BT_KEY = 'your API-KEY'; // 接口秘钥(在宝塔面板-面板设置-API接口-接口秘钥中获取)
            let BT_PANEL = 'http://***.***.***.***:36677'; // 面板地址 通常为36677接口 也可使用域名访问
            let nowtime = new Date().getTime().toString();
            let type = '/data?action=getData&table=sites'; //获取网站列表为例
            BT_PANEL += type;
            let signature = {
                request_time: nowtime,
                request_token: md5(nowtime + md5(BT_KEY))
            };
            let query_data = { //获取网站列表query参数
                limit: 15,
            };
            let body_data = {};
    
            let headers = {
                "User-Agent": 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0) Gecko/20100101 Firefox/6.0',
            };
            // toolkit.post_header 带headers的POST请求
            // toolkit.join_url 将query参数拼接到url上
            let html = await toolkit.post_header(toolkit.join_url(BT_PANEL, Object.assign(signature, query_data)), body_data, headers);
            console.log(html.body);
        } catch (err) {
            console.log(err);
        }
    })();
    
    

    总结

    1. 使用API前需要,先在宝塔面板-面板设置-API接口-IP白名单中添加调用的服务器地址。如果为本机调用,还需要添加 127.0.0.1
    2. 宝塔官方API
    3. 本实例以获取网站列表为例,其它的只需要查看官方API查找并替换URL和提交参数即可。当然直接F12,通过开发者工具查看更加方便。
    4. API参数绝大多数为query参数、POST请求,官方的post参数大多数应该改为query参数才可以用。
    原博客链接:https://www.cnblogs.com/xpengp/
  • 相关阅读:
    C/C++优秀书籍清单
    C语言内存管理详解
    C/C++语言常用头文件及函数
    如何学好C++语言
    VS2010 更改MFC标题及标题栏图标和exe图标
    Vue 实现前进刷新,后退不刷新的效果 玩转vue-router里的meta
    $nextTick 页面局部刷新 延迟加载
    吸顶动画 侧边栏 监听滚动条位置 监听元素距离顶部高度
    vue 自定义侧边栏 递归无限子级菜单
    vue element NavMenu 莫名出现蓝色边框
  • 原文地址:https://www.cnblogs.com/xpengp/p/12736152.html
Copyright © 2020-2023  润新知