Spaces:
Running
Running
Update app.js
Browse files
app.js
CHANGED
@@ -17,6 +17,15 @@ let tokenCache = {
|
|
17 |
refreshPromise: null
|
18 |
};
|
19 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
async function getAccessToken() {
|
21 |
const now = Date.now() / 1000;
|
22 |
|
@@ -68,7 +77,9 @@ function constructApiUrl(location) {
|
|
68 |
|
69 |
async function handleRequest(req, res) {
|
70 |
if (req.method === 'OPTIONS') {
|
71 |
-
|
|
|
|
|
72 |
}
|
73 |
|
74 |
const apiKey = req.headers['x-api-key'];
|
@@ -80,6 +91,7 @@ async function handleRequest(req, res) {
|
|
80 |
message: "Your API key does not have permission to use the specified resource."
|
81 |
}
|
82 |
});
|
|
|
83 |
return;
|
84 |
}
|
85 |
|
@@ -117,6 +129,7 @@ async function handleRequest(req, res) {
|
|
117 |
res.setHeader('Access-Control-Allow-Methods', 'POST, GET, OPTIONS');
|
118 |
res.setHeader('Access-Control-Allow-Headers', 'Content-Type, Authorization, x-api-key, anthropic-version, model');
|
119 |
|
|
|
120 |
response.body.pipe(res);
|
121 |
} catch (error) {
|
122 |
console.error('Error:', error);
|
@@ -127,6 +140,7 @@ async function handleRequest(req, res) {
|
|
127 |
message: "An unexpected error occurred while processing your request."
|
128 |
}
|
129 |
});
|
|
|
130 |
}
|
131 |
}
|
132 |
|
|
|
17 |
refreshPromise: null
|
18 |
};
|
19 |
|
20 |
+
// 日志函数
|
21 |
+
function logRequest(req, status, message) {
|
22 |
+
const timestamp = new Date().toISOString();
|
23 |
+
const method = req.method;
|
24 |
+
const url = req.originalUrl;
|
25 |
+
const ip = req.ip;
|
26 |
+
console.log(`[${timestamp}] ${method} ${url} - Status: ${status}, IP: ${ip}, Message: ${message}`);
|
27 |
+
}
|
28 |
+
|
29 |
async function getAccessToken() {
|
30 |
const now = Date.now() / 1000;
|
31 |
|
|
|
77 |
|
78 |
async function handleRequest(req, res) {
|
79 |
if (req.method === 'OPTIONS') {
|
80 |
+
handleOptions(res);
|
81 |
+
logRequest(req, 204, 'CORS preflight request');
|
82 |
+
return;
|
83 |
}
|
84 |
|
85 |
const apiKey = req.headers['x-api-key'];
|
|
|
91 |
message: "Your API key does not have permission to use the specified resource."
|
92 |
}
|
93 |
});
|
94 |
+
logRequest(req, 403, 'Invalid API key');
|
95 |
return;
|
96 |
}
|
97 |
|
|
|
129 |
res.setHeader('Access-Control-Allow-Methods', 'POST, GET, OPTIONS');
|
130 |
res.setHeader('Access-Control-Allow-Headers', 'Content-Type, Authorization, x-api-key, anthropic-version, model');
|
131 |
|
132 |
+
logRequest(req, response.status, 'Request forwarded successfully');
|
133 |
response.body.pipe(res);
|
134 |
} catch (error) {
|
135 |
console.error('Error:', error);
|
|
|
140 |
message: "An unexpected error occurred while processing your request."
|
141 |
}
|
142 |
});
|
143 |
+
logRequest(req, 500, `Error: ${error.message}`);
|
144 |
}
|
145 |
}
|
146 |
|