48 lines
1.4 KiB
JavaScript
48 lines
1.4 KiB
JavaScript
import { http_request } from 'http'
|
|
import { https_request } from 'https'
|
|
|
|
console.log(process.env)
|
|
|
|
const urls = process.env.INPUT_URLS.replace('\n', ' ').trim().replace(/\s+/, ',').split(',').filter(s => s)
|
|
const content_type = process.env.INPUT_CONTENT_TYPE.trim()
|
|
const template = process.env.INPUT_TEMPLATE.trim()
|
|
|
|
urls.forEach(item => {
|
|
console.log(item)
|
|
let request = undefined
|
|
if (item.startsWith('http://')) {
|
|
console.log('使用http', item)
|
|
request = http_request
|
|
} else if (item.startsWith('https://')) {
|
|
console.log('使用https', item)
|
|
request = https_request
|
|
}
|
|
|
|
if (request) {
|
|
// 设置请求选项
|
|
const options = {
|
|
method: 'POST', // HTTP请求方法
|
|
headers: {
|
|
'Content-Type': content_type, // 指定请求体类型为JSON格式
|
|
'Content-Length': Buffer.byteLength(template) // 计算请求体长度
|
|
}
|
|
};
|
|
|
|
// 创建HTTP客户端并发送POST请求
|
|
const req = request(item, options, (res) => {
|
|
let data = '';
|
|
|
|
res.on('data', (chunk) => {
|
|
data += chunk;
|
|
});
|
|
|
|
res.on('end', () => {
|
|
console.log(`服务器返回结果:${data}`);
|
|
})
|
|
})
|
|
|
|
req.write(template) // 将POST请求参数写入请求流中
|
|
req.end() // 完成请求
|
|
}
|
|
})
|