user agent
This commit is contained in:
@@ -19,9 +19,16 @@ static func _lua_fetch_handler(vm: LuauVM) -> int:
|
||||
|
||||
# Set request options
|
||||
var headers_array: PackedStringArray = []
|
||||
|
||||
var has_user_agent = false
|
||||
for header_name in headers:
|
||||
if str(header_name).to_lower() == "user-agent":
|
||||
has_user_agent = true
|
||||
headers_array.append(str(header_name) + ": " + str(headers[header_name]))
|
||||
|
||||
if not has_user_agent:
|
||||
headers_array.append("User-Agent: " + UserAgent.get_user_agent())
|
||||
|
||||
var response_data = make_http_request(url, method, headers_array, body)
|
||||
|
||||
# Create response object with actual data
|
||||
|
||||
36
flumi/Scripts/Utils/UserAgent.gd
Normal file
36
flumi/Scripts/Utils/UserAgent.gd
Normal file
@@ -0,0 +1,36 @@
|
||||
class_name UserAgent
|
||||
extends RefCounted
|
||||
|
||||
# Generate Flumi browser user agent string
|
||||
static func get_user_agent() -> String:
|
||||
var app_version = ProjectSettings.get_setting("application/config/version", "1.0.0")
|
||||
var godot_version = Engine.get_version_info()
|
||||
var os_name = OS.get_name()
|
||||
|
||||
var arch = ""
|
||||
match os_name:
|
||||
"Windows":
|
||||
if OS.has_environment("PROCESSOR_ARCHITEW6432"):
|
||||
arch = "x64"
|
||||
elif OS.get_environment("PROCESSOR_ARCHITECTURE") == "AMD64":
|
||||
arch = "x64"
|
||||
else:
|
||||
arch = "x86"
|
||||
"Linux":
|
||||
arch = "X11"
|
||||
"macOS":
|
||||
arch = "Intel"
|
||||
_:
|
||||
arch = "Unknown"
|
||||
|
||||
var user_agent = "Mozilla/5.0 (%s; %s) Flumi/%s GurtKit/%s Godot/%s.%s.%s (gurted.com)" % [
|
||||
os_name,
|
||||
arch,
|
||||
app_version,
|
||||
app_version,
|
||||
godot_version.major,
|
||||
godot_version.minor,
|
||||
godot_version.patch
|
||||
]
|
||||
print(user_agent)
|
||||
return user_agent
|
||||
1
flumi/Scripts/Utils/UserAgent.gd.uid
Normal file
1
flumi/Scripts/Utils/UserAgent.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://v5m04vgylwbi
|
||||
Reference in New Issue
Block a user