Parámetro de matriz Delphi TRestRequest
Esto podría ser simple.
Estoy accediendo a un servicio RESTFul con Delphi XE6 usando componentes RestClient: TRestClient, TRestRequest, TRestResponse y THTTPBasicAuthenticator.
El servicio requiere parámetros que no tengo problemas para agregar:
RestReq.Params.AddItem('param1', 'value1');
RestReq.Params.AddItem('param2', 'value2');
Con el código anterior en el lado del servidor, se ve así:
{
"param1":"value1",
"param2":"value2"
}
Sin embargo, cuando necesito enviar un parámetro que es una matriz e intento:
RestReq.Params.AddItem('param1', 'value1');
RestReq.Params.AddItem('param2', 'value2');
RestReq.Params.AddItem('param3', '[v1, v2, v3]');
El servicio lo rechazará porque el tercer parámetro no es la matriz esperada. Lo cual es correcto porque recibe:
{
"param1":"value1",
"param2":"value2",
"param3":"[v1,v2,v3]"
}
Sé que se ve muy simple. He cambiado RestClient.ContentType, he intentado manipular la matriz. He intentado cambiar el parámetro ContentType, Options y adivinar que la solución no es un juego que me gusta jugar. Entonces la pregunta sería: Usando los componentes de RestClient, ¿cómo puedo llamar a mi servicio con los siguientes parámetros?
{
"param1":"value1",
"param2":"value2",
"param3":[
"v1",
"v2",
"v3"
]
}
De antemano, gracias por su tiempo.