雷池社区版OPEN API使用教程
OPEN API使用教程
新版本接口支持API Token鉴权

接口文档官方没有提供,有需要可以自行爬取,爬了几个,其实也很方便
使用条件
- 需要使用默认的 admin 用户登录才可见此功能
- 版本需要 >= 6.6.0
使用方法
1.在系统管理创建API TOKEN 
2.发起请求,请求的header中增加额外的参数,如下
"X-SLCE-API-TOKEN": "雷池管理端生成的API Token"
案例参考
# python使用API Token添加站点案例import requests
import jsonheader = {"X-SLCE-API-TOKEN": "雷池管理端生成的API Token"
}
#添加站点的URL
url = 'https://雷池IP:9443/api/open/site'playload = {"ports":["80"],"server_names":["*"],"upstreams":["http://127.0.0.1:9443"],"comment":"","load_balance":{"balance_type":1}
}playload = json.dumps(playload)
requests.post(url=url,headers=header,data=playload,verify=False)#go语言案例
package mainimport ("bytes""crypto/tls""encoding/json""fmt""io/ioutil""net/http"
)func main() {url := "https://雷池IP:9443/api/open/site"token := "雷池管理端生成的API Token"payload := map[string]interface{}{"ports": []string{"80"},"server_names": []string{"*"},"upstreams": []string{"http://127.0.0.1:9443"},"comment": "","load_balance": map[string]int{"balance_type": 1},}jsonData, _ := json.Marshal(payload)req, err := http.NewRequest("POST", url, bytes.NewBuffer(jsonData))if err != nil {fmt.Println("Request error:", err)return}req.Header.Set("Content-Type", "application/json")req.Header.Set("X-SLCE-API-TOKEN", token)client := &http.Client{Transport: &http.Transport{TLSClientConfig: &tls.Config{InsecureSkipVerify: true}},}resp, err := client.Do(req)if err != nil {fmt.Println("Error:", err)return}defer resp.Body.Close()body, _ := ioutil.ReadAll(resp.Body)fmt.Println("Response:", string(body))
}# php 案例
<?php
$url = "https://雷池IP:9443/api/open/site";
$api_token = "雷池管理端生成的API Token";$data = ["ports" => ["80"],"server_names" => ["*"],"upstreams" => ["http://127.0.0.1:9443"],"comment" => "","load_balance" => ["balance_type" => 1]
];$options = ["http" => ["header" => ["Content-Type: application/json","X-SLCE-API-TOKEN: $api_token"],"method" => "POST","content" => json_encode($data),"ignore_errors" => true,],"ssl" => ["verify_peer" => false,"verify_peer_name" => false,]
];$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
if ($result === FALSE) { /* Handle error */ }
echo $result;
?># java案例
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;public class AddSite {public static void main(String[] args) {try {String url = "https://雷池IP:9443/api/open/site";String apiToken = "雷池管理端生成的API Token";String payload = """{"ports": ["80"],"server_names": ["*"],"upstreams": ["http://127.0.0.1:9443"],"comment": "","load_balance": {"balance_type": 1}}""";URL obj = new URL(url);HttpURLConnection con = (HttpURLConnection) obj.openConnection();con.setRequestMethod("POST");con.setRequestProperty("Content-Type", "application/json");con.setRequestProperty("X-SLCE-API-TOKEN", apiToken);con.setDoOutput(true);try (OutputStream os = con.getOutputStream()) {byte[] input = payload.getBytes(StandardCharsets.UTF_8);os.write(input, 0, input.length);}int responseCode = con.getResponseCode();System.out.println("Response Code: " + responseCode);// Further code to read the response can be added here} catch (Exception e) {e.printStackTrace();}}
}
# node.js案例
const https = require('https');const data = JSON.stringify({ports: ["80"],server_names: ["*"],upstreams: ["http://127.0.0.1:9443"],comment: "",load_balance: { balance_type: 1 }
});const options = {hostname: '雷池IP',port: 9443,path: '/api/open/site',method: 'POST',headers: {'Content-Type': 'application/json','X-SLCE-API-TOKEN': '雷池管理端生成的API Token'},rejectUnauthorized: false
};const req = https.request(options, (res) => {let data = '';res.on('data', (chunk) => { data += chunk; });res.on('end', () => { console.log('Response:', data); });
});req.on('error', (e) => { console.error(e); });
req.write(data);
req.end();
#ruby案例
require 'net/http'
require 'uri'
require 'json'
require 'openssl'url = URI("https://雷池IP:9443/api/open/site")
api_token = "雷池管理端生成的API Token"http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONErequest = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["X-SLCE-API-TOKEN"] = api_token
request.body = {ports: ["80"],server_names: ["*"],upstreams: ["http://127.0.0.1:9443"],comment: "",load_balance: { balance_type: 1 }
}.to_jsonresponse = http.request(request)
puts "Response:", response.read_body
大家可以结合熟悉的语言进行参考
相关文章:
雷池社区版OPEN API使用教程
OPEN API使用教程 新版本接口支持API Token鉴权 接口文档官方没有提供,有需要可以自行爬取,爬了几个,其实也很方便 使用条件 需要使用默认的 admin 用户登录才可见此功能版本需要 > 6.6.0 使用方法 1.在系统管理创建API TOKEN 2.发…...
LSTM(Long Short-Term Memory,长短期记忆网络)在高端局效果如何
lstm 杂乱数据分析 LSTM(Long Short-Term Memory,长短期记忆网络)在高端局,即复杂的机器学习和深度学习应用中,展现出了其独特的优势和广泛的应用价值。以下是对LSTM在高端局中的详细解析: 一、LSTM的优势…...
模组操作宝典:4种关机重启技巧,让你的设备运行无忧
今天我说的是关于关机重启技巧。 给4G模组VBAT断电关机,模组关机前未能及时退出当前基站,会有什么影响呢? 基站会误以为设备还在线,下次开机仍会拿着上次驻网信息去连基站。基站一看,上次链接还在——认为你是非法设…...
利用API接口实现旺店通和金蝶系统的无缝数据对接
旺店通销售出库对接金蝶销售订单(线下)的技术实现 在企业日常运营中,数据的高效流转和准确对接是确保业务顺畅运行的关键。本文将聚焦于一个具体案例:如何通过轻易云数据集成平台,实现旺店通企业奇门的数据无缝对接到金蝶云星空系统。我们将…...
热题100(hash)
热题100(Hash) 三道题目 1.两数之和(√) 49.字母异位词分组(题解) 128.最长连续序列(题解) 思路 第1题简单hash映射,O(n) 第49题,关键点在于Hashmap的形式,‘HashMap<Stri…...
Ubuntu下Mysql修改默认存储路径
首先声明,亲身经验,自己实践,网上百度了好几个帖子,全是坑,都TMD的不行,修改各种配置文件,就是服务起不来,有以下几种配置文件需要修改 第一个文件/etc/mysql/my.cnf 这个文件是存…...
LVGL移植教程(超详细)——基于GD32F303X系列MCU
版本:LVGL Kernel V8.3.0,运行压力测试Demo Stress首先放一张最终Stress Demo 运行图: 一、准备 1. GD32 Keil工程 准备任意一个屏幕可以正常显示的GD32工程: 2. LVGL源码 最新版现在已经是V9.2了,这里我选择了…...
《计算机原理与系统结构》学习系列——处理器(中)
系列文章目录 目录 流水线数据通路与控制概述5个流水级指令周期与流水级 流水线性能流水线时钟周期的长度T和数量cycles流水线性能 流水线数据通路流水线寄存器流水线分析图形化流水线流水线控制 流水线数据通路与控制 概述 5个流水级 指令周期与流水级 单周期实现中&#x…...
深入解析 OceanBase 数据库中的局部索引和全局索引
深入解析 OceanBase 数据库中的局部索引和全局索引 引言 在分布式数据库中,索引的设计对于优化查询性能至关重要。OceanBase 作为一款高性能的分布式关系数据库,支持局部索引和全局索引两种索引类型。理解这两种索引的特点和适用场景,对于数…...
2024防晒衣市场社媒营销洞察报告
2024年,硬防晒已经从单一的户外场景,扩展到通勤、外出游玩、穿搭等更多场景,多样化的需求导致的消费群体不断扩大,“防晒经济”迎来自己的主场时刻。 当前,防晒衣不仅需要满足不用场景的灵活切换,还要满足多…...
【Ubuntu20.04 Visual Studio Code安装】【VSCODE】
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、打开VSCOE官网二、下载VSODE的Ubuntu版本三、安装VSCODE软件包四、导入工作空间(添加工作空间目录)五、安装插件:1.安装简体中文包2.安装ros插件…...
贪心算法day(1)
1.将数组和减半的最少操作次数 链接:. - 力扣(LeetCode) 思路:创建大跟堆将最大的数进行减半 注意点:double t queue.poll()会将queue队列数字减少一个后再除以2,queue.offer(queue.poll()/…...
窗口函数sql使用总结
一、开窗 基础知识:窗口分析函数 (1)LAG(col,n,DEFAULT) 用于统计窗口内往上第n行值 第一个参数为列名,第二个参数为往上第n行(可选,默认为1),第三个参数为默认值(当往…...
python单因素分析
写了个简易小程序实现,以后用的时候直接复制就行: import numpy as np from scipy.stats import fdatas [[65,60,69,79,38,68,54,67,68,43],[74,71,58,49,58,49,48,68,56,47],[22,34,24,21,20,36,36,31,28,33] ] a 0.05def get_mean_var(data):data_m…...
「C/C++」C++ STL容器库 之 std::list 双向链表容器
✨博客主页何曾参静谧的博客📌文章专栏「C/C」C/C程序设计📚全部专栏「VS」Visual Studio「C/C」C/C程序设计「UG/NX」BlockUI集合「Win」Windows程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「PK」Parasoli…...
应用程序框架进阶<HarmonyOS第一课>
一、判断题 1. 一个应用是由一个或多个HAP组成。 正确(True) 错误(False) 正确(True) 回答正确 2. UIAbility组件多实例启动模式是默认的启动模式。 正确(True)错误(False) 错误(False) 回答正确 二、单选题 1. 以下关于指定实例启动模式说法正确的是? …...
【C++】vector<string>-动态数组存储多个string
#1024程序员节 | 征文# //demo #include <iostream> #include <vector> #include <string>using namespace std; int main() {// 创建一个存储字符串的向量vector<string> Record;// 向向量中添加字符串Record.push_back("example");Record…...
66Analytics 汉化版,网站统计分析源码,汉化前台后台
66Analytics 汉化版,网站统计分析源码,汉化前台后台 本源码汉化前台后台,非其他只汉化前台版 网络分析变得容易。自托管、友好、一体化的网络分析工具。轻量级跟踪、会话回放、热图、用户旅程等 简单、好看、友好-大多数网络分析解决方案做得太多了,在大…...
蓝桥杯单片机STC15F2K60S2第十四届省赛代码详细讲解(附完整代码)
本文是写第十四届的蓝桥杯省赛代码,新手教程作者也写了一篇,欢迎去观看作者专门为新手写的一篇。也欢迎收录该专栏。 蓝桥杯单片机STC15F2K60S2第十三届省赛代码详细讲解(附完整代码) 专栏: 蓝桥杯单片机 然后接下来…...
[免费]SpringBoot+Vue智慧校园(校园管理)系统[论文+源码+SQL脚本]
大家好,我是java1234_小锋老师,看到一个不错的SpringBootVue智慧校园(校园管理)系统,分享下哈。 项目视频演示 【免费】SpringBootVue智慧校园(校园管理)系统 Java毕业设计_哔哩哔哩_bilibili 项目介绍 随着信息技术的迅猛发展,…...
Linux链表操作全解析
Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表?1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...
高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...
《用户共鸣指数(E)驱动品牌大模型种草:如何抢占大模型搜索结果情感高地》
在注意力分散、内容高度同质化的时代,情感连接已成为品牌破圈的关键通道。我们在服务大量品牌客户的过程中发现,消费者对内容的“有感”程度,正日益成为影响品牌传播效率与转化率的核心变量。在生成式AI驱动的内容生成与推荐环境中࿰…...
代理篇12|深入理解 Vite中的Proxy接口代理配置
在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...
VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP
编辑-虚拟网络编辑器-更改设置 选择桥接模式,然后找到相应的网卡(可以查看自己本机的网络连接) windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置,选择刚才配置的桥接模式 静态ip设置: 我用的ubuntu24桌…...
基于IDIG-GAN的小样本电机轴承故障诊断
目录 🔍 核心问题 一、IDIG-GAN模型原理 1. 整体架构 2. 核心创新点 (1) 梯度归一化(Gradient Normalization) (2) 判别器梯度间隙正则化(Discriminator Gradient Gap Regularization) (3) 自注意力机制(Self-Attention) 3. 完整损失函数 二…...
如何更改默认 Crontab 编辑器 ?
在 Linux 领域中,crontab 是您可能经常遇到的一个术语。这个实用程序在类 unix 操作系统上可用,用于调度在预定义时间和间隔自动执行的任务。这对管理员和高级用户非常有益,允许他们自动执行各种系统任务。 编辑 Crontab 文件通常使用文本编…...
接口自动化测试:HttpRunner基础
相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具,支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议,涵盖接口测试、性能测试、数字体验监测等测试类型…...
libfmt: 现代C++的格式化工具库介绍与酷炫功能
libfmt: 现代C的格式化工具库介绍与酷炫功能 libfmt 是一个开源的C格式化库,提供了高效、安全的文本格式化功能,是C20中引入的std::format的基础实现。它比传统的printf和iostream更安全、更灵活、性能更好。 基本介绍 主要特点 类型安全:…...
