izuemon commited on
Commit
ad80d01
·
verified ·
1 Parent(s): fb7770b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +17 -4
app.py CHANGED
@@ -92,7 +92,6 @@ def get_managers():
92
  return jsonify(res.json().get("managers", []))
93
 
94
 
95
-
96
  FORWARD_HEADERS = {
97
  "User-Agent",
98
  "Accept",
@@ -121,21 +120,35 @@ def cors_proxy():
121
  if not url.startswith(("http://", "https://")):
122
  return "http または https のURLのみ使用できます", 400
123
 
124
- # 必要なヘッダだけ転送
 
 
 
 
 
 
 
 
 
125
  headers = {
126
  k: v for k, v in request.headers.items()
127
- if k in FORWARD_HEADERS
128
  }
129
 
130
  # gzip 問題回避
131
  headers.pop("Accept-Encoding", None)
132
 
 
 
 
 
 
133
  resp = requests.request(
134
  method=request.method,
135
  url=url,
136
  headers=headers,
137
  data=request.get_data(),
138
- params=request.args.to_dict(flat=True),
139
  timeout=30,
140
  )
141
 
 
92
  return jsonify(res.json().get("managers", []))
93
 
94
 
 
95
  FORWARD_HEADERS = {
96
  "User-Agent",
97
  "Accept",
 
120
  if not url.startswith(("http://", "https://")):
121
  return "http または https のURLのみ使用できます", 400
122
 
123
+ # 追加転送ヘッダ取得(例: send=x-games-flags,x-games-sdk-auth)
124
+ extra_headers = set()
125
+ send_param = request.args.get("send")
126
+ if send_param:
127
+ extra_headers = {h.strip() for h in send_param.split(",") if h.strip()}
128
+
129
+ # 転送対象ヘッダを動的に構築(小文字比較で安全に)
130
+ allowed_headers = {h.lower() for h in FORWARD_HEADERS}
131
+ allowed_headers.update(h.lower() for h in extra_headers)
132
+
133
  headers = {
134
  k: v for k, v in request.headers.items()
135
+ if k.lower() in allowed_headers
136
  }
137
 
138
  # gzip 問題回避
139
  headers.pop("Accept-Encoding", None)
140
 
141
+ # url パラメータと send パラメータは転送しない
142
+ forward_params = request.args.to_dict(flat=True)
143
+ forward_params.pop("url", None)
144
+ forward_params.pop("send", None)
145
+
146
  resp = requests.request(
147
  method=request.method,
148
  url=url,
149
  headers=headers,
150
  data=request.get_data(),
151
+ params=forward_params,
152
  timeout=30,
153
  )
154