介绍
cpanel-client 是一个 Node.js 的 npm 包,用于与 cPanel 控制面板交互。它封装了 cPanel API,使其更易于使用。使用 cpanel-client,我们可以编写 JavaScript 脚本来自动化执行一些常见的 cPanel 任务,例如创建邮箱、添加 FTP 用户等。
安装
使用以下命令安装 cpanel-client:
npm install cpanel-client
使用指南
在使用 cpanel-client 之前,我们需要了解 cPanel API,并获取一个有效的 API 密钥。
获取 API 密钥
在 cPanel 管理界面中,点击“API 密钥”(API Tokens)图标,然后创建一个新的 API 密钥。在创建 API 密钥时,我们需要为其选择一个权限范围。选择一个尽可能小的范围,以确保 API 密钥只能访问我们需要的资源。我们可以通过 cpanel-client 的 getAccessLevel
方法来检查 API 密钥的权限范围。
初始化 cpanel-client
在我们能够调用 cPanel API 之前,我们需要对 cpanel-client 进行初始化。首先,我们需要创建一个 cpanel-client 的实例,然后使用 setAuth
方法来指定 API 密钥:
-- -------------------- ---- ------- ----- ------ - ------------------------- ----- ------ - --- -------- ----- -------------- ----- - --------- ------------- --------- ------------- ---------- ------------- -- ---
上述示例中,我们指定了 cPanel 控制面板的主机名,并使用 setAuth
方法来指定我们的 API 密钥。我们还指定了 cpanel-client 的日志级别,以便在需要的时候输出调试信息。如果我们不想启用日志,则可以将 level
指定为 silent
。
调用 cPanel API
一旦我们成功地初始化了 cpanel-client,我们可以开始调用 cPanel API。
例如,我们可以使用 listSubdomains
方法来列出所有子域名:
cpanel.listSubdomains().then((domains) => { console.log(domains); }).catch((err) => { console.error(err); });
上述示例中,我们使用 Promise 的 then
方法来处理 API 调用成功的情况,并使用 catch
方法来处理 API 调用失败的情况。
另一个例子是我们可以使用 addEmailAccount
方法来创建一个新的邮箱账户:
cpanel.addEmailAccount('john', 'mydomain.com', 'mysecretpassword').then(() => { console.log('Email account created successfully'); }).catch((err) => { console.error(err); });
上述示例中,我们使用 addEmailAccount
方法来创建一个名为 john 的邮箱账户,并指定了它的密码。我们还指定了邮箱账户的域名,这里我们使用了 mydomain.com。该方法返回一个 Promise,我们使用 then
方法来处理 API 调用成功的情况。
更多示例
以下是一些其他常用的 cPanel 操作的示例:
列出所有备份
cpanel.listBackups().then((backups) => { console.log(backups); }).catch((err) => { console.error(err); });
添加 FTP 用户
cpanel.addFtpAccount('john', 'mysecretpassword', '/public_html').then(() => { console.log('FTP account created successfully'); }).catch((err) => { console.error(err); });
安装 Let's Encrypt SSL 证书
cpanel.installSsl('mydomain.com', { success_redirect_url: 'https://mydomain.com', contact_email: 'ssl@example.com', }).then(() => { console.log('Let\'s Encrypt SSL certificate installed successfully'); }).catch((err) => { console.error(err); });
总结
cpanel-client 是一个非常有用的 npm 包,它让我们能够方便地使用 JavaScript 来自动化执行一些 cPanel 任务。在使用 cpanel-client 时,我们需要熟悉 cPanel API 的调用方式,并获得一个有效的 API 密钥。我们可以使用 setAuth
方法来指定 API 密钥并初始化 cpanel-client,然后调用 cPanel API 来完成各种任务。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005768181e8991b448eaa37