This commit is contained in:
Luk
2026-01-21 14:06:39 +08:00
parent a415b53549
commit c22b8d6b73
2 changed files with 23 additions and 36 deletions

23
get_runmode.js Normal file
View File

@@ -0,0 +1,23 @@
// 使用Node.js实现Shell脚本逻辑获取公网IP并检查是否以.172结尾
const https = require('https')
const { execFileSync } = require('child_process')
// https.get 没有同步版本,使用 child_process.execFileSync 同步获取公网 IP
let ip
try {
// 使用 curl 同步请求获取 IP
ip = execFileSync('curl', ['-s', 'https://api.ipify.org'], { encoding: 'utf8' }).trim()
} catch (e) {
// 如果 curl 失败,降级为固定开发环境
ip = '0.0.0.0'
}
const result = ip.endsWith('.172') ? 'production' : ip.endsWith('.60') ? 'test' : 'development'
// 直接导出结果字符串require 时即可拿到 IP 对应的 env
module.exports = result
// 如果直接运行此文件,则打印结果
if (require.main === module) {
console.log(result)
}