anonymous Log in
Search
Recents:
v3.0
gx-l
Manejo del HTTP Response Code en Procedimiento
23/10/19 15:01

plusvalia

Replies: 0

Buenas!
Estoy desarrollando un Procedimiento el cual voy a exponer como un servicio REST.
Me gustaría poder definir el código de la respuesta en HTTP ante algunos errores de validación (en lugar de que devuelva HTTP 200).
Actualmente estoy haciendo lo siguiente:
> &BCLoanBalance.Load(0)
>
> If &BCLoanBalance.Success()
> //TODO
> Else
> &Message = &BCLoanBalance.GetMessages().Item(1)
> Do 'Error'
> EndIf
>
> Sub 'Error'
> &HTTPResponse.AddString(Format('{"error":{"code":"%1","message":"%2"}}', &Message.Id.Trim(), &Message.Description.Trim()))
> Return
> EndSub
La variable &BCLoanBalance es un Business Component y el código de arriba siempre va a dar error pues no hay ningún elemento con Id = 0 (es a propósito).
Este servicio REST hoy me devuelve el JSON del error que le agrego con la función AddString a &HTTPResponse pero el HTTP Status es 200. Me gustaría poder modificarlo a 500 o 400 por ejemplo.
Probé utilizar la propiedad &HTTPResponse.ErrCode pero la misma es de solo lectura.
¿Se puede hacer eso desde Genexus?
Gracias!!
Mateo Fernández
Executive Partner
Email: mateofd@plusvalialabs.com
LinkedIn: https://www.linkedin.com/in/mateofd <https://www.linkedin.com/in/mateofd>
Web: http://www.plusvalialabs.com <http://www.plusvalialabs.com/>
Make Tech Work for You...not the other way around
Don't print this email unless you have to. Let's protect the Environment.
No imprima este correo electrónico si no es necesario. Protejamos el Medio Ambiente.
-----------------------------------------
Para Suscribirse/Desuscribirse:
http://www.gxtechnical.com/cgi-bin/hforum.exe?2,3,30,1
Por consultas owner-gx-l@gxtech.com.uy


Back to gx-l