Feature: HTTPD JSON-API und Frontend-Verbesserungen #4

Open
ppfeiffer wants to merge 1 commit from feature/httpd-api-improvements into master
Owner

Summary

  • Neuer API-Endpunkt GET /api/status liefert Knotenstatus als JSON
  • JSON-MIME-Typ in l1httpd.h und MIME-Switch ergaenzt
  • Infrastruktur fuer weitere /api/-Endpunkte vorbereitet
  • Frontend-Bugfixes: unescape() behoben, doppeltes ready() zusammengefuehrt, Form-ID bereinigt
  • Menueintraege Nodes und Statistiken implementiert
  • Fehlerbehandlung fuer alle AJAX-Aufrufe
  • Analysedokument doc/httpd_verbesserungen.md hinzugefuegt

Test plan

  • make clean && make ohne Warnungen
  • GET /api/status liefert JSON
  • Alle vier Statismenue-Eintraege funktionieren
  • Befehlszeile liefert Ausgabe
## Summary - Neuer API-Endpunkt GET /api/status liefert Knotenstatus als JSON - JSON-MIME-Typ in l1httpd.h und MIME-Switch ergaenzt - Infrastruktur fuer weitere /api/-Endpunkte vorbereitet - Frontend-Bugfixes: unescape() behoben, doppeltes ready() zusammengefuehrt, Form-ID bereinigt - Menueintraege Nodes und Statistiken implementiert - Fehlerbehandlung fuer alle AJAX-Aufrufe - Analysedokument doc/httpd_verbesserungen.md hinzugefuegt ## Test plan - [ ] make clean && make ohne Warnungen - [ ] GET /api/status liefert JSON - [ ] Alle vier Statismenue-Eintraege funktionieren - [ ] Befehlszeile liefert Ausgabe
C-Backend (src/l1httpd.c, include/l1httpd.h):
- Neuer MIME-Typ MIME_JSON (application/json) in l1httpd.h
- Enum h_mimetype um JSON-Wert erweitert
- Neuer API-Endpunkt GET /api/status liefert Knotenstatus als JSON
  (Rufzeichen, freie/maximale Buffer)
- Infrastruktur für weitere /api/-Endpunkte vorbereitet
  (PutJsonStatus, PutJsonError, zentraler /api/-Branch in TcpipHttpd)
- h_mimetype wird automatisch auf JSON gesetzt wenn URI mit /api/ beginnt

Frontend (httpd/index.html):
- unescape() durch decodeURIComponent() ersetzt (deprecated API)
- Zwei separate $(document).ready()-Blöcke zu einem zusammengeführt
- Doppelte Form-ID "frm" bereinigt, Formular-ID auf "cmdform" geändert
- "Aktuell" nutzt jetzt GET /api/status und zeigt strukturierte Tabelle
- "Nodes" und "Statistiken" Menüeinträge implementiert (cmd n / cmd st)
- Fehlerbehandlung für alle AJAX-Aufrufe ergänzt
- encodeURIComponent() für Benutzereingaben in der Befehlszeile

Dokumentation:
- doc/httpd_verbesserungen.md: Analyse und Verbesserungsübersicht

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin feature/httpd-api-improvements:feature/httpd-api-improvements
git switch feature/httpd-api-improvements

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch master
git merge --no-ff feature/httpd-api-improvements
git switch feature/httpd-api-improvements
git rebase master
git switch master
git merge --ff-only feature/httpd-api-improvements
git switch feature/httpd-api-improvements
git rebase master
git switch master
git merge --no-ff feature/httpd-api-improvements
git switch master
git merge --squash feature/httpd-api-improvements
git switch master
git merge --ff-only feature/httpd-api-improvements
git switch master
git merge feature/httpd-api-improvements
git push origin master
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ppfeiffer/tnn179test!4
No description provided.