添加文件:beian.js、generate204.js、ipapi.js、trace.js
This commit is contained in:
57
ipapi.js
Normal file
57
ipapi.js
Normal file
@@ -0,0 +1,57 @@
|
||||
async function handleRequest(request) {
|
||||
|
||||
// 创建一个空对象来存储请求头数据
|
||||
const headers = {}
|
||||
|
||||
// 遍历请求头数据并将其存储在对象中
|
||||
for (const [name, value] of request.headers.entries()) {
|
||||
headers[name] = value
|
||||
}
|
||||
|
||||
const url = new URL(request.url);
|
||||
const path = url.pathname;
|
||||
|
||||
// 用来返回的数据
|
||||
let returnData = {}
|
||||
returnData["ip"] = headers["EO-Connecting-IP"];
|
||||
returnData["user-agent"] = headers["User-Agent"];
|
||||
if(returnData["user-agent"] === undefined){
|
||||
returnData["user-agent"] = headers["user-agent"];
|
||||
}
|
||||
returnData["geo"] = request.eo.geo;
|
||||
returnData["version"] = "0.4";
|
||||
|
||||
if(path === "/"){
|
||||
const returnDataStr = "/\t\t\tHelp\n/info\t\t\tALL Info(JSON)\n/ip\t\t\tIP(String)\n/ip/json\t\tIP(Json)\n/ua\t\t\tUser-Agent Data\n/country\t\tCountry";
|
||||
return new Response(returnDataStr, {status: 200})
|
||||
|
||||
} else if(path === "/country"){
|
||||
const country = returnData["geo"]?.countryCodeAlpha2 || "Country not available";
|
||||
return new Response(country, {status: 200})
|
||||
|
||||
} else if(path === "/ua"){
|
||||
const returnDataStr = returnData["user-agent"];
|
||||
return new Response(returnDataStr, {status: 200})
|
||||
}else if(path === "/info"){
|
||||
const returnDataStr = JSON.stringify(returnData);
|
||||
return new Response(returnDataStr, {status: 200,headers: {'Content-Type':'application/json'}})
|
||||
}else if(path === "/ip/json"){
|
||||
let returnDataTemp ={};
|
||||
returnDataTemp["ip"] = returnData["ip"];
|
||||
returnDataTemp["geo"] = returnData["geo"];
|
||||
const returnDataStr = JSON.stringify(returnDataTemp)
|
||||
return new Response(returnDataStr, {status: 200,headers: {'Content-Type':'application/json'}})
|
||||
}else if(path === "/ip"){
|
||||
const returnDataStr = returnData["ip"];
|
||||
return new Response(returnDataStr, {status: 200})
|
||||
}else if(path === "/favicon.ico"){
|
||||
// 浏览器图标响应200
|
||||
return new Response("", {status: 200})
|
||||
}else{
|
||||
return new Response("404", {status: 404})
|
||||
}
|
||||
}
|
||||
|
||||
addEventListener('fetch', event => {
|
||||
return event.respondWith(handleRequest(event.request));
|
||||
});
|
||||
Reference in New Issue
Block a user