ddmessage-fruge365
Version:
钉钉机器人消息发送工具 - 支持文本、markdown、链接等多种消息类型
48 lines (45 loc) • 1.68 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getCurrentIP = getCurrentIP;
exports.createProxyConfig = createProxyConfig;
const axios_1 = __importDefault(require("axios"));
async function getCurrentIP() {
const apis = [
'https://api.ipify.org?format=json',
'https://ipinfo.io/json',
'https://api.myip.com'
];
for (const api of apis) {
try {
const response = await axios_1.default.get(api, { timeout: 5000 });
const data = response.data;
return data.ip || data.ipaddress || '';
}
catch (error) {
continue;
}
}
throw new Error('无法获取当前IP地址');
}
function createProxyConfig(serverIP) {
return `location /dingtalk/webhook {
proxy_pass https://oapi.dingtalk.com/robot/send;
proxy_set_header Host oapi.dingtalk.com;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
if ($request_method = 'OPTIONS') {
return 204;
}
proxy_connect_timeout 60s;
proxy_read_timeout 60s;
proxy_send_timeout 60s;
}`;
}
//# sourceMappingURL=utils.js.map