diff --git a/ip_analyzer.py b/ip_analyzer.py index 4f21dd3..56c40bb 100644 --- a/ip_analyzer.py +++ b/ip_analyzer.py @@ -445,6 +445,22 @@ def add_header(response): return response +@app.context_processor +def inject_config(): + """Inject configuration variables into templates""" + from flask import request + + def get_base_url(): + # Construct base URL from request + scheme = request.headers.get('X-Forwarded-Proto', request.scheme) + host = request.headers.get('X-Forwarded-Host', request.host) + return f"{scheme}://{host}" + + return dict( + base_url=get_base_url, + request=request + ) + # ============================================================================ # WEB ROUTES # ============================================================================ diff --git a/templates/api.html b/templates/api.html index e57d868..1fe8825 100644 --- a/templates/api.html +++ b/templates/api.html @@ -14,7 +14,7 @@
Base URL: http://localhost:5000
Base URL: {{ base_url() }}
Format: JSON
Authentication: None (local use)
import requests
-response = requests.post('http://localhost:5000/api/analyze',
+response = requests.post('{{ base_url() }}/api/analyze',
json={'ips': '1.1.1.1, 8.8.8.8, 9.9.9.9'})
data = response.json()
@@ -123,12 +123,12 @@ for ip_info in data['results']:
import requests
# First, analyze
-analyze_response = requests.post('http://localhost:5000/api/analyze',
+analyze_response = requests.post('{{ base_url() }}/api/analyze',
json={'ips': 'your IP list...'})
results = analyze_response.json()['results']
# Then filter
-filter_response = requests.post('http://localhost:5000/api/filter',
+filter_response = requests.post('{{ base_url() }}/api/filter',
json={
'results': results,
'filters': {
@@ -161,7 +161,7 @@ print(f"Filtered: {len(filtered)} IPs")
import requests
-response = requests.post('http://localhost:5000/api/export/ipset',
+response = requests.post('{{ base_url() }}/api/export/ipset',
json={
'ips': ['1.1.1.1', '8.8.8.8'],
'timeout': 43200 # 12 hours
@@ -274,7 +274,7 @@ print("Saved to block_ips.sh")
import requests
-BASE_URL = 'http://localhost:5000'
+BASE_URL = '{{ base_url() }}'
# 1. Analyze IPs from log file
with open('/var/log/attacks.log', 'r') as f: