[gd_scene load_steps=8 format=2] [ext_resource path="res://WebServerSimple.gd" type="Script" id=1] [ext_resource path="res://WebRoot.gd" type="Script" id=2] [sub_resource type="User" id=1] user_id = 0 user_name = "test" email = "test@test.test" pre_salt = "0e40ce1db0133a483c574b47b96d29494dfe8be759697b6d0480b0a0cef58a33" post_salt = "c85bdbfd747d3779d158b0658e9c7eb8b7fac130f15e935469b329d115a1b044" password_hash = "14588e720d4d3ba2b0370e6707f35940a97c8db66427ceb1990188d2c1357bd0" [sub_resource type="User" id=2] user_id = 1 user_name = "test2" email = "test2@test2.test2" pre_salt = "bc6ade172d7444b76b099618a1059f42c7cdadfbdafa201742b88b0f05eca4a4" post_salt = "01d3fcc124fa170e87c7cfd91d9e5babb3ee7171590b2964681086a248da2a73" password_hash = "97bd09b4d567ee0b02aeb8f6a8e44036b8776a8de3109add4fc05753582f5ef2" [sub_resource type="SessionSetupWebServerMiddleware" id=3] [sub_resource type="UserSessionSetupWebServerMiddleware" id=4] [sub_resource type="CSRFTokenWebServerMiddleware" id=5] ignored_urls = PoolStringArray( "/user/login", "/user/register" ) [node name="Main" type="Node"] [node name="UserManagerStatic" type="UserManagerStatic" parent="."] users = [ SubResource( 1 ), SubResource( 2 ) ] [node name="WebServerSimple" type="WebServerSimple" parent="."] script = ExtResource( 1 ) [node name="WebRoot" type="WebRoot" parent="WebServerSimple"] www_root_path = "res://www/" middlewares = [ SubResource( 3 ), SubResource( 4 ), SubResource( 5 ) ] script = ExtResource( 2 ) menu_str = "
index
login
register
settings
logout

" [node name="StaticWebPage" type="StaticWebPage" parent="WebServerSimple/WebRoot"] uri_segment = "/" data = " You can go and log in on the users page here: Login

Note that in this demo sessions are not saved, and will get lost from the app if you restart it.

You can also try registratition. It will work, but it will forget new users on restart. Normally in an app setup like this you wonldn't add a registration node.

You can make permanent users using the UserManagerStatic node's properties using the editor.

2 Users are available by default:

username: test
password: test

and

username: test2
password: test2

" [node name="UserWebPage" type="UserWebPage" parent="WebServerSimple/WebRoot"] uri_segment = "user" logged_out_render_type = 1 logged_out_redirect_url = "/user/login" [node name="UserLoginWebPage" type="UserLoginWebPage" parent="WebServerSimple/WebRoot/UserWebPage"] uri_segment = "login" logged_in_render_type = 1 logged_in_redirect_url = "/" [node name="UserRegisterWebPage" type="UserRegisterWebPage" parent="WebServerSimple/WebRoot/UserWebPage"] uri_segment = "register" logged_in_render_type = 1 logged_in_redirect_url = "/" [node name="UserLogoutWebPage" type="UserLogoutWebPage" parent="WebServerSimple/WebRoot/UserWebPage"] uri_segment = "logout" logged_out_render_type = 1 logged_out_redirect_url = "/" [node name="UserSettingsWebPage" type="UserSettingsWebPage" parent="WebServerSimple/WebRoot/UserWebPage"] uri_segment = "settings" logged_out_render_type = 1 logged_out_redirect_url = "/user/login" [node name="HTTPSessionManager" type="HTTPSessionManager" parent="WebServerSimple"] [node name="PanelContainer" type="PanelContainer" parent="."] anchor_right = 1.0 anchor_bottom = 1.0 [node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer"] margin_left = 7.0 margin_top = 7.0 margin_right = 1017.0 margin_bottom = 593.0 alignment = 1 [node name="LinkButton" type="LinkButton" parent="PanelContainer/VBoxContainer"] margin_left = 391.0 margin_top = 286.0 margin_right = 619.0 margin_bottom = 300.0 size_flags_horizontal = 4 text = "Click to open http://127.0.0.1:8080/" uri = "http://127.0.0.1:8080/"