XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet
公开
关注 0 Fork 0 Star 1
返回提交历史

XFEstudio/gpt4free

Log invalid requests

3fc69e0a
hlohaus <983577+hlohaus@users.noreply.github.com>
提交于

代码差异

1 个文件 +9 -7
Modified g4f/api/__init__.py +9 -7
@@ -241,6 +241,11 @@ class Api:
241 241 user_g4f_api_key = await self.security(request)
242 242 if hasattr(user_g4f_api_key, "credentials"):
243 243 user_g4f_api_key = user_g4f_api_key.credentials
244 if AppConfig.demo and user is None:
245 ip = request.headers.get("X-Forwarded-For", "")[:4].strip(":.")
246 country = request.headers.get("Cf-Ipcountry", "")
247 user = request.headers.get("x-user", ip)
248 user = f"{country}:{user}" if country else user
244 249 if AppConfig.g4f_api_key is None or not user_g4f_api_key or not secrets.compare_digest(AppConfig.g4f_api_key, user_g4f_api_key):
245 250 if has_crypto and user_g4f_api_key:
246 251 try:
@@ -249,10 +254,12 @@ class Api:
249 254 try:
250 255 data = json.loads(decrypt_data(session_key, user_g4f_api_key))
251 256 expires = int(decrypt_data(private_key, data["data"])) + 86400
252 user = data.get("user", user)
253 if not user:
257 if not data.get("user"):
254 258 raise ValueError("User not found")
259 user = data.get("user")
255 260 except:
261 debug.log(f"Invalid G4F API key for user: '{user}'")
262 debug.log(await request.json())
256 263 return ErrorResponse.from_message(f"Invalid G4F API key", HTTP_401_UNAUTHORIZED)
257 264 expires = int(expires) - int(time.time())
258 265 hours, remainder = divmod(expires, 3600)
@@ -278,11 +285,6 @@ class Api:
278 285 user = await self.get_username(request)
279 286 except HTTPException as e:
280 287 return ErrorResponse.from_message(e.detail, e.status_code, e.headers)
281 if user is None:
282 ip = request.headers.get("X-Forwarded-For", "")[:4].strip(":.")
283 country = request.headers.get("Cf-Ipcountry", "")
284 user = request.headers.get("x-user", ip)
285 user = f"{country}:{user}" if country else user
286 288 request = update_headers(request, user)
287 289 response = await call_next(request)
288 290 return response