Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-06-2024
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 510
Poder: 18
Neeruu Va por buen camino
Hola Vincent...

Por ahora estoy arrancando con mvcframework...
Estoy viendo donde crear la conexión a la base de datos, donde crear el modulo de datos, sobre todo para analizar las solicitudes concurrentes, como se comporta cuando llegan varias solicitudes simultaneas y una se demora...

Horse era otra alternativa que tenia en vista... Es bueno saber que alguien mas esta trabajando para poder ayudarnos...

Hasta ahora la una documentación con la que me estoy guiando con mvcframework son los videos de Neftali...

Con Mars Curiosity me paso lo mismo, poca documentación.
__________________
Saluda Atte Neeruu!!! :)

Última edición por Neeruu fecha: 04-06-2024 a las 22:25:37.
Responder Con Cita
  #2  
Antiguo 05-06-2024
WHILENOTEOF WHILENOTEOF is offline
Miembro
 
Registrado: mar 2008
Posts: 234
Poder: 18
WHILENOTEOF Va camino a la fama
Para documentarte de DMVC Framework, aparte de los ejemplos del repositorio, alguna indicación que hay en la web de Daniele Teti y en github, lo mejor es que te leas el libro que publicó. Si no tienes unas necesidades grandes, te va a aguantar sin problemas muchas peticiones concurrentes, es importante que utilices la opción de pooling de conexiones que trae por ejemplo Firedac, ya que se gasta bastante en crear y destruir conexiones. Además el DMVC Framework por defecto montas el servidor en un ejecutable, programa de consola o servicio utilizando la tecnología webbroker de Delphi, pero si generas dll Isapi para instalar en IIS, ya la gestión de peticiones y red te la hace la capa del servidor IIS, que va a resultar más rápido y eficiente.
Responder Con Cita
  #3  
Antiguo 05-06-2024
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 510
Poder: 18
Neeruu Va por buen camino
Hola WHILENOTEOF, el libro es gratis o de pago?

Muchas gracias por tu aclaración sobre el pooling de conexiones.
__________________
Saluda Atte Neeruu!!! :)
Responder Con Cita
  #4  
Antiguo 05-06-2024
WHILENOTEOF WHILENOTEOF is offline
Miembro
 
Registrado: mar 2008
Posts: 234
Poder: 18
WHILENOTEOF Va camino a la fama
ES de pago, https://leanpub.com/delphimvcframework , si puedes permitírtelo te lo recomiendo. Si no, revisando los ejemplos , puedes hacerte también una idea de las posibilidades y de cómo funciona.
Responder Con Cita
  #5  
Antiguo 06-06-2024
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 510
Poder: 18
Neeruu Va por buen camino
Una consulta:

Tengo un JSON, con esta estructura:

Código:
{
    "PROVEEDORES": {
        "COD_PROV": 4,
        "NOM_PROV": "PRUEBA3_EDIT",
        "COD_USER": 0
    }
}
Si esta de esa forma, cuando mapea asi:
Código Delphi [-]
    [MVCPath('/api/proveedor')]
    [MVCHTTPMethod([httpPOST])]
    procedure CreateProveedor([MVCFromBody] Proveedor: TProveedor);
No me carga los valores en el objecto Proveedor.


Ahora si saco la palabra "PROVEEDORES" de JSON mapea correcto los valores.
Hay alguna configuración para indicarle el nombre del Objecto.

Código Delphi [-]
  TProveedor = class
  private
    [JSONName('COD_PROV')]
    FCODPROV: Integer;
    [JSONName('NOM_PROV')]
    FNOMPROV: string;
    [JSONName('COD_USER')]
    FCODUSER: Integer;
  published
    property COD_PROV: Integer read FCODPROV write FCODPROV;
    property NOM_PROV: string read FNOMPROV write FNOMPROV;
    property COD_USER: Integer read FCODUSER write FCODUSER;
  end;

Disculpen si mi terminología no es correcta.
__________________
Saluda Atte Neeruu!!! :)
Responder Con Cita
  #6  
Antiguo 06-06-2024
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 510
Poder: 18
Neeruu Va por buen camino
WHILENOTEOF, voy a aprovecharme de tu solidaridad. Tu que tienes el libro, dice algo del lo que consulte respecto a la estructura del JSON, busque por todos lados y hasta donde llega mi entendimiento y no puedo solucionarlo.
__________________
Saluda Atte Neeruu!!! :)
Responder Con Cita
  #7  
Antiguo 06-06-2024
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 510
Poder: 18
Neeruu Va por buen camino
Hola nuevamente, logre que el objeto json que viene en el post se lea con el formato que le paso.

Agregue las siguientes propiedades:

Código Delphi [-]
    [MVCPath('/api/proveedor')]
    [MVCHTTPMethod([httpPOST])]
    //[MapperJSONSer('PROVEEDORES')]
    //[MVCConsumes('application/json')]
    [MVCConsumes(TMVCMediaType.APPLICATION_JSON)]
    procedure CreateProveedor;

Y luego en el procedimiento:

Código Delphi [-]
procedure ControllerProveedores.CreateProveedor;//(const [ MVCFromBody] Proveedor:TProveedor);
var Proveedor: TProveedor;
begin
  Proveedor := Context.Request.BodyAs('PROVEEDORES');

'PROVEEDORES' es el RootName;

De esta forma puedo levantar la informacion enviada con este formato de JSON:

Código Delphi [-]
{
    "PROVEEDORES": {
        "COD_PROV": 4,
        "NOM_PROV": "PRUEBA3_EDIT",
        "COD_USER": 0
    }
}
__________________
Saluda Atte Neeruu!!! :)
Responder Con Cita
  #8  
Antiguo 06-06-2024
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 510
Poder: 18
Neeruu Va por buen camino
Cita:
Empezado por WHILENOTEOF Ver Mensaje
ES de pago, https://leanpub.com/delphimvcframework , si puedes permitírtelo te lo recomiendo. Si no, revisando los ejemplos , puedes hacerte también una idea de las posibilidades y de cómo funciona.
Me encantaría comprarlo pero la conversión Peso/Dolar hace que sea un valor muy elevado el del libro.
__________________
Saluda Atte Neeruu!!! :)
Responder Con Cita
  #9  
Antiguo 20-06-2024
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 510
Poder: 18
Neeruu Va por buen camino
Hola buenos dias.

Alguien ocupo este componente para convertir json en dataset?
Funciona? es recomendable? tienen alguna otra alternativa?

https://github.com/viniciussanchez/dataset-serialize

Es del mismo desarrollador de Horse.

Saludos.
__________________
Saluda Atte Neeruu!!! :)
Responder Con Cita
  #10  
Antiguo 20-06-2024
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.874
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Neeruu Ver Mensaje

Alguien ocupo este componente para convertir json en dataset?
Funciona? es recomendable? tienen alguna otra alternativa?

Yo miraría los que vienen con delphi. En especial el TRESTResponseDataSetAdapter.
Lo digo porque el RESTDebugger que viene con delphi, hace exactamente lo que tú estás pidiendo y lo hace con los componentes de delphi.

Si en el RESTDebugger ejecutas un GET que te devuelva datos con esta estructura:

Cita:

[{"cif":"S7668730J","name":"ORACULACESL","creation_date":"16/06/1992","phonenumber":"937016021","faxnumber":"937016022","email":"x9mn2me9b@mail.com","municipality": "Reinoso","municipality_inecode":"09310","province":"Burgos","province_inecode":"09","address":"VíaF uente","address_number":"1","address_zipcode":"09710","cnae":"9900","activity":"Actividadesdeorganiz acionesyorganismosextraterritoriales"},{"cif":"F98923642","name":"OXYLEXSA","creation_date":"26/06/1964","phonenumber":"976978765","faxnumber":"976978766","email":"876yhekspz@btinternet.com","municip ality":"Paderne","municipality_inecode":"15064","province":"Coruña,A","province_inecode":"15","addre ss":"CallejónHorno","address_number":"34","address_zipcode":"15516","cnae":"8424","activity":"Ordenp úblicoyseguridad"}]

Que tiene la misma estructura que tú necesitas:

Código Delphi [-]
[
    {
        "cif": "S7668730J",
        "name": "ORACULACESL",
        "creation_date": "16/06/1992",
        "phonenumber": "937016021",
        "faxnumber": "937016022",
        "email": "x9mn2me9b@mail.com",
        "municipality": "Reinoso",
        "municipality_inecode": "09310",
        "province": "Burgos",
        "province_inecode": "09",
        "address": "VíaFuente",
        "address_number": "1",
        "address_zipcode": "09710",
        "cnae": "9900",
        "activity": "Actividadesdeorganizacionesyorganismosextraterritoriales"
    },
    {
        "cif": "F98923642",
        "name": "OXYLEXSA",
        "creation_date": "26/06/1964",
        "phonenumber": "976978765",
        "faxnumber": "976978766",
        "email": "876yhekspz@btinternet.com",
        "municipality": "Paderne",
        "municipality_inecode": "15064",
        "province": "Coruña,A",
        "province_inecode": "15",
        "address": "CallejónHorno",
        "address_number": "34",
        "address_zipcode": "15516",
        "cnae": "8424",
        "activity": "Ordenpúblicoyseguridad"
    }
]


En la pestaña BODY te devuelve el JSON, pero en la pestaña TABULAR DATA, te devuelve los datos en formato TDataset (DBGrid).
Revisa este artículo porque creo que explica lo que necesitas.




__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
servidores rest avmm2004 Varios 3 05-08-2021 09:37:44
API REST en delphi darkbits Varios 1 21-10-2020 08:58:10
PHP / Rest DataSnap Rockin PHP 8 14-02-2017 20:49:38
Rest roman La Taberna 11 30-07-2014 16:52:00
REST, Marshaling y \ iuqrul Providers 1 08-11-2013 10:51:33


La franja horaria es GMT +2. Ahora son las 19:06:26.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi