zoukankan      html  css  js  c++  java
  • 宝塔接口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/
  • 相关阅读:
    React初识整理(二)--生命周期的方法
    React初识整理(一)
    前后端分离浅析
    url地址数据参数转化JSON对象(js三种方法实现)
    js和JQuery中的获取宽、高、位置等方法整理
    游民轮播图效果实现
    焦点轮播图效果实现
    iOS开发debug集锦
    实现一个 RESTful API 服务器
    从iOS的图片圆角想到渲染
  • 原文地址:https://www.cnblogs.com/xpengp/p/12736152.html
Copyright © 2011-2022 走看看