PrestaSharp icon indicating copy to clipboard operation
PrestaSharp copied to clipboard

Error al codificar filtros y añadir nuevos productos

Open txtxo opened this issue 9 years ago • 2 comments

He detectado que al buscar un producto con un filtro devuelve todos los resultados en vez de el que se ha solicitado.

Esta llamada se hace en la línea 93 de Factories/RestSharpFactory.cs var response = client.Execute<T>(Request);

El valor de response.ResponseUri es:

https://dominio/api/products?display=full&filter%255Breference%255D=REFERENCIA&date=1&ws_key=xxxx

Ya que al estar mal codificado el corchete devuelve todos los productos en lugar de filtrar Debería ser:

https://dominio/api/products?display=full&filter[reference]=REFERENCIA&date=1&ws_key=xxxx

Al añadir productos supongo que el error será parecido ya que el ResponseUri es:

https://dominio/api/products?ws_key=xxxx

txtxo avatar May 05 '16 13:05 txtxo

Buenas A mi tambien me ha pasado. La cosa es que el filtrado iba bien, pero tenia muchos problemas con un modulo del servidor (el mod_evasive), al pedir a hosting que me lo desactivaran es cuando he empezado a tener este problema con los filtros

mulflar avatar Jun 15 '16 16:06 mulflar

Hello, This strongly looks like a url re-encoding. The filter in the URL that you sent is encoded in UTF-8 and the server re-encodes it again.

Exemple : http://yourapi.com/api/products?filter[id]=1 If you use UTF-8 you send : http://yourapi.com/api/products?filter%5bid%5d=1 to the server. If the server has a redirection rule (http -> https), and if that rule encode again in UTF-8 :

https://yourapi.com/api/products?filter%255bid%255d=1 => Doesn't exist, replaced by https://yourapi.com/api/products

Please, check if the web server has redirection rules.

DorianCaup avatar Nov 02 '16 14:11 DorianCaup