Globale Variable user_id

ZH1896ZH

Mitglied
Guten Tag zusammen!

Ich habe ein kleines Problem, welches mich nun schon viel Zeit gekostet hat :)

Und zwar möchte ich nachdem sich der User erfolgreich eingeloggt hat, seine user_id im Client speichern. Das Spring-Tool gibt dem Client als Response auf den Login-Aufruf die user_id des angemeldeten user zurück. Nun möchte ich diese speichern und in ein anderes javascript file übertragen, damit dort der user anhand seiner id erkannt wird.

Da ich ein ziemlicher Javascript-Neuling bin, habe ich ein ziemliches durcheinander veranstaltet. Muss sagen Java gefällt mir um einiges besser, viel ordentlicher :)

anbei noch ein paar code schnipsel:

[CODE lang="javascript" title="Login-Prozess"] //Login-Prozess
loginForm.addEventListener("submit", (e) => {
e.preventDefault();
let u_email = document.querySelector("#u_email").value;
let u_password = document.querySelector("#u_password").value;

// Ajax Prozess --> Rest-Service Aufruf
$.ajax({
type: "POST",
url: "/api/login",
data: JSON.stringify({
userEmail: u_email,
userPassword: u_password,
}),
success: showCalendar,
dataType: "json",
contentType: "application/json",
});
});[/CODE]

[CODE lang="javascript" title="HTML-Seite wird gewechselt bei erfolgreichem Login"]//Wenn Login erfolgreich wird die Kalendersicht angezeigt
function showCalendar(response) {
active_user = response;
console.log("modul main.js: " + active_user);

if (active_user != -1) {
//-1 --> login failed
window.location.href = "calendar.html"; //dieses html-file ist mit calendar.js verknüpft
}
}[/CODE]

[CODE lang="javascript" title="calendar.js --> Import der Variable activeUser in ein anderes JS file"]import { active_user } from "./main.js";
const id = active_user;[/CODE]
 
G

Gelöschtes Mitglied 65838

Gast
ich ändere in der URL die Endung zu calendar.html -> login umgangen

da musst du dir was anderes einfallen lassen o_O
 

ZH1896ZH

Mitglied
ich ändere in der URL die Endung zu calendar.html -> login umgangen

da musst du dir was anderes einfallen lassen o_O
alles klar danke. wie gesagt bin ein absoluter anfänger was webtechnologien angeht. ist es in dem fall besser wenn man nur ein index.html file hat und dann durch ajax abrufe die html-seite verändert. anstatt verschiedene html dateien miteinander zu verlinken?
 
G

Gelöschtes Mitglied 65838

Gast
mit php kannst du schon mal ganze seiten zurück geben
Java:
<?php function TestBlockHTML($replStr) {
    ob_start(); ?>
    <html>
    <body><h1><?php echo($replStr) ?></h1>
    </html>
<?php
    return ob_get_clean();
} ?>
ob das jetzt sinnvoll ist weis ich nich... hab im studium immer mehr javascript gehasst und web aufbau weil ich normales java einfach viel nicer dicer finde xD


mir ist nur das aufgefallen dass du da ne schwachsetelle hast und auch bei der problem lösung das alte problem noch da wäre
 

ZH1896ZH

Mitglied
mit php kannst du schon mal ganze seiten zurück geben
Java:
<?php function TestBlockHTML($replStr) {
    ob_start(); ?>
    <html>
    <body><h1><?php echo($replStr) ?></h1>
    </html>
<?php
    return ob_get_clean();
} ?>
ob das jetzt sinnvoll ist weis ich nich... hab im studium immer mehr javascript gehasst und web aufbau weil ich normales java einfach viel nicer dicer finde xD


mir ist nur das aufgefallen dass du da ne schwachsetelle hast und auch bei der problem lösung das alte problem noch da wäre
Habe noch nie mit PHP gearbeitet, gibt es keine andere Möglichkeit?
Ja in Sachen wie organsiert man den Frontend muss ich wohl noch vieles dazu lernen. Ich weiss nicht wie ich genau das alles strukturieren soll. Gibt es evtl. hilfreichen Content der sich nur Webclients bezieht?

1619697352705.png

So sieht die meine Projektstruktur momentan aus.
Würdest du das package static anderst organisieren?
 
G

Gelöschtes Mitglied 65838

Gast
du musst ein backend haben ...ohne php ..ohne java oder sonst was was ddu als backend hast kannst du den login ja nicht mal durch ziehen

so wie es jetzt aussieht hast du java als backend udn da musst du halt schauen wie java den Content deiner aktuellen seite durchwechseln kann mit hilfe von javascript -> somit das problem mit der neuen siete weg ist

also nicht auf eine andere HTML seite wechseln sondern das alte div unsichtbar machen und das neue Sichtbar das wäre die einfachste hau drauf methode das könntest du aber komplett mit javascript machen
jedoch könnte man durch seiten manipulation wieder einfach die divs wechseln :D (und ab dabin ich bei web dev ausgesteigen)
mit der Bedingung dass der Login von java erfolgreich war

ausserdem bleibst dann auch auf der aktuellen Sseite und hast die Login ID immer parat;)
 
Zuletzt bearbeitet von einem Moderator:

ZH1896ZH

Mitglied
du musst ein backend haben ...ohne php ..ohne java oder sonst was was ddu als backend hast kannst du den login ja nicht mal durch ziehen

so wie es jetzt aussieht hast du java als backend udn da musst du halt schauen wie java den Content deiner aktuellen seite durchwechseln kann mit hilfe von javascript -> somit das problem mit der neuen siete weg ist

also nicht auf eine andere HTML seite wechseln sondern das alte div unsichtbar machen und das neue Sichtbar das wäre die einfachste hau drauf methode das könntest du aber komplett mit javascript machen
jedoch könnte man durch seiten manipulation wieder einfach die divs wechseln :D (und ab dabin ich bei web dev ausgesteigen)
mit der Bedingung dass der Login von java erfolgreich war

ausserdem bleibst dann auch auf der aktuellen Sseite und hast die Login ID immer parat;)

hallo joreyk,

ja ich mache jetzt alles mit divs, also je ein html file und js file. gibt sicher schönere varianten, aber hauptsache es läuft.

besten dank für deine hilfe!

der thread kann geschlossen werden..
 

mihe7

Top Contributor
Muss sagen Java gefällt mir um einiges besser, viel ordentlicher
Das ist bei aktuellem JavaScript nicht mehr ganz so schlimm.

Kleines Beispiel:

[code lang=JavaScript title=UserLogin.js]
export default class UserLogin {
get username() {
return sessionStorage.getItem("username");
}

set username(name) {
sessionStorage.setItem("username", name);
}

render(elem) {
elem.innerText = this.username;
}
}
[/code]

[code lang=javascript title=main.js]
import UserLogin from './UserLogin.js';

const login = new UserLogin();
const output = document.getElementById("output");
const newUserName = document.getElementById("newLoginName");
const button = document.getElementById("setLoginName");
button.addEventListener("click", _ => login.username = newUserName.value);

login.render(output);
[/code]

[code lang=HTML]
<div id="output"></div>
<input id="newLoginName" />
<input id="setLoginName" type="button" />
<script src="main.js" type="module"></script>
[/code]
Die HTML-Datei kannst Du mehrfach anlegen; so lange Du den Browser nicht schließt und damit die Sitzung beendest, bleibt der Spaß gespeichert.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Z Globale Veriable problem Angular, React, JQuery - Fragen zu JavaScript 2
L Inhalt von Input in Variable speichern, zurücksetzen mit Java Angular, React, JQuery - Fragen zu JavaScript 1
K Von Angular auf Server Variable zugreifen Angular, React, JQuery - Fragen zu JavaScript 3
P Variable in Google Chrome Angular, React, JQuery - Fragen zu JavaScript 4
U Variable in bold ausgeben Angular, React, JQuery - Fragen zu JavaScript 5
D Variable ohne HTML Tags ausgeben Angular, React, JQuery - Fragen zu JavaScript 14
Anfänger2011 Ergebnis einer Funktion direkt in Variable speichern Angular, React, JQuery - Fragen zu JavaScript 6
E Javascript wenn Variable aktualisiert wird, dann prüfe Angular, React, JQuery - Fragen zu JavaScript 0
T JavaScript Variable in Klasse ändern Angular, React, JQuery - Fragen zu JavaScript 2
P Variable weitergabe von Server zu Server Angular, React, JQuery - Fragen zu JavaScript 2
N Operator als Variable Angular, React, JQuery - Fragen zu JavaScript 5
S Dringendes onclick Problem mit variable - Danke Angular, React, JQuery - Fragen zu JavaScript 2
M Variable in url an ander seite übergeben Angular, React, JQuery - Fragen zu JavaScript 4
R Lokale Variable an neue Seite übergeben Angular, React, JQuery - Fragen zu JavaScript 4
R Variable übergeben und bilder anzeigen Angular, React, JQuery - Fragen zu JavaScript 10
F Java Variable in scr= Angular, React, JQuery - Fragen zu JavaScript 2
F Laufzeitfehler durch Hochkomma in Variable Angular, React, JQuery - Fragen zu JavaScript 5
F Javascript Variable suchen und ersetzen Angular, React, JQuery - Fragen zu JavaScript 2
T JS/HTML: User Inputs statt Predefines nehmen; onChange Events werden ignoriert Angular, React, JQuery - Fragen zu JavaScript 6
S User Name an Html übergeben Angular, React, JQuery - Fragen zu JavaScript 6

Ähnliche Java Themen


Oben