fix: 替换过时的 X-XSS-Protection 为 Content-Security-Policy
This commit is contained in:
@@ -22,8 +22,6 @@ import threading
|
||||
import logging
|
||||
from typing import Protocol
|
||||
|
||||
import requests # noqa: F401 — DashscopeEmbedder 使用
|
||||
|
||||
from src.core.config import EmbedConfig
|
||||
|
||||
logger = logging.getLogger("md-vector-db")
|
||||
|
||||
@@ -40,11 +40,16 @@ class EPUBSplitter:
|
||||
extracted_chapters = []
|
||||
for item in book.get_items_of_type(ebooklib.ITEM_DOCUMENT):
|
||||
try:
|
||||
# ebooklib 的 get_content() 返回 bytes
|
||||
content = item.get_content().decode("utf-8")
|
||||
except UnicodeDecodeError:
|
||||
logger.warning("EPUB 跳过一个无法解码的章节: %s", item.get_name())
|
||||
continue
|
||||
try:
|
||||
content = item.get_content().decode("utf-8-sig")
|
||||
except UnicodeDecodeError:
|
||||
try:
|
||||
content = item.get_content().decode("latin-1")
|
||||
except UnicodeDecodeError:
|
||||
logger.warning("EPUB 跳过一个无法解码的章节: %s", item.get_name())
|
||||
continue
|
||||
|
||||
# 用 BeautifulSoup 去标签(如果可用),否则保留原样
|
||||
try:
|
||||
|
||||
+1
-1
@@ -79,7 +79,7 @@ async def security_headers_middleware(request: Request, call_next):
|
||||
response = await call_next(request)
|
||||
response.headers["X-Content-Type-Options"] = "nosniff"
|
||||
response.headers["X-Frame-Options"] = "DENY"
|
||||
response.headers["X-XSS-Protection"] = "1; mode=block"
|
||||
response.headers["Content-Security-Policy"] = "default-src 'self'"
|
||||
response.headers["Referrer-Policy"] = "no-referrer"
|
||||
return response
|
||||
|
||||
|
||||
Reference in New Issue
Block a user