Client/scripts/login/login.gd

40 lines
948 B
GDScript3
Raw Normal View History

extends Button
@export var username_field: LineEdit
@export var password_field: LineEdit
@export var http_request: HTTPRequest
var url: String = "http://localhost:8080/api/v1/player/login"
var headers = ["Content-Type: application/json"]
func _ready() -> void:
if not username_field:
push_error("No Username Field set")
return
if not password_field:
push_error("No Password Field set")
return
if not http_request:
push_error("No Http Request set")
return
connect("pressed", login)
func login() -> void:
var login_data = {
"username": username_field.text,
"password": password_field.text,
}
var json = JSON.stringify(login_data)
http_request.connect("request_completed", on_login_response)
http_request.request(url, headers, HTTPClient.METHOD_POST, json)
func on_login_response(
_result: int,
_response_code: int,
_headers: PackedStringArray,
body: PackedByteArray,
) -> void:
print(body.get_string_from_utf8())