Estoy seguro de que la respuesta a esto será un problema de codificación de caracteres dolorosamente obvio ...
Estoy usando curl en la línea de comando para probar algunos puntos finales en una aplicación de Python. El punto final toma parámetros de URL de latitud y longitud. Nada muy especial. Pongo el comando:
curl -v -L http://localhost:5000/pulse/?lat=41.225&lon=-73.1
El servidor responde, con una salida de curl detallada:
* Connected to localhost (127.0.0.1) port 5000 (#0)
> GET /pulse/?lat=41.225 HTTP/1.1
> User-Agent: curl/7.21.6 (i686-pc-linux-gnu) libcurl/7.21.6 OpenSSL/1.0.0e zlib/1.2.3.4 libidn/1.22 librtmp/2.3
> Host: localhost:5000
> Accept: */*
>
* HTTP 1.0, assume close after body
< HTTP/1.0 500 INTERNAL SERVER ERROR
< Content-Type: application/json
< Content-Length: 444
< Server: Werkzeug/0.8.1 Python/2.7.2+
< Date: Wed, 01 Feb 2012 17:06:29 GMT
<
{
"msg": "TypeError: float() argument must be a string or a number",
"flag": 0,
"stack": [
"Traceback (most recent call last):",
" File \"engine.py\", line 139, in dispatch_request",
" return getattr(self, 'action_'+endpoint)(request, **values)",
" File \"engine.py\", line 818, in action_getpulse",
" lon = float(request.args.get('lon'))"
],
"err": 1
* Closing connection #0
}
[1]+ Done
En la segunda línea de ese volcado, es obvio que el segundo parámetro, lon
no se envía. ¿Qué estoy haciendo mal? Gracias.