mirror of
https://github.com/KeymonSoft/jRDC-Multi.git
synced 2026-04-17 12:56:23 +00:00
- Se modificaron los archivos de reinicio de los servicios (servidor y Bow) y se cambio el menu del "manager" para que a seccion de "reload" incluya la liga a reinciar Bow.
47 lines
1.4 KiB
QBasic
47 lines
1.4 KiB
QBasic
B4J=true
|
|
Group=Default Group
|
|
ModulesStructureVersion=1
|
|
Type=Class
|
|
Version=10.3
|
|
@EndOfDesignText@
|
|
'Handler class for JSON requests from Web Clients (JavaScript/axios)
|
|
'VERSION 14 (Validación de Parámetros): Chequea que el número de '?' coincida con los parámetros recibidos.
|
|
Sub Class_Globals
|
|
|
|
End Sub
|
|
|
|
Public Sub Initialize
|
|
|
|
End Sub
|
|
|
|
Sub Handle(req As ServletRequest, resp As ServletResponse)
|
|
' --- Headers CORS ---
|
|
resp.SetHeader("Access-Control-Allow-Origin", "*")
|
|
resp.SetHeader("Access-Control-Allow-Methods", "GET, POST, OPTIONS")
|
|
resp.SetHeader("Access-Control-Allow-Headers", "Content-Type")
|
|
Try
|
|
SendSuccessResponse(resp, CreateMap("message": $"Pong ${DateTime.now}"$))
|
|
Catch
|
|
Log(LastException)
|
|
SendErrorResponse(resp, 500, LastException.Message)
|
|
End Try
|
|
End Sub
|
|
|
|
|
|
' --- Subrutinas de ayuda para respuestas JSON (sin cambios) ---
|
|
Private Sub SendSuccessResponse(resp As ServletResponse, dataMap As Map)
|
|
dataMap.Put("success", True)
|
|
Dim jsonGenerator As JSONGenerator
|
|
jsonGenerator.Initialize(dataMap)
|
|
resp.ContentType = "application/json"
|
|
resp.Write(jsonGenerator.ToString)
|
|
End Sub
|
|
|
|
Private Sub SendErrorResponse(resp As ServletResponse, statusCode As Int, errorMessage As String)
|
|
Dim resMap As Map = CreateMap("success": False, "error": errorMessage)
|
|
Dim jsonGenerator As JSONGenerator
|
|
jsonGenerator.Initialize(resMap)
|
|
resp.Status = statusCode
|
|
resp.ContentType = "application/json"
|
|
resp.Write(jsonGenerator.ToString)
|
|
End Sub |