Je suis sûr que la réponse à cette question sera un problème de codage de caractères douloureusement évident ...
J'utilise curl sur la ligne de commande pour tester certains points de terminaison dans une application python. Le point de terminaison prend les paramètres d'URL de latitude et de longitude. Rien de spécial. J'ai mis la commande:
curl -v -L http://localhost:5000/pulse/?lat=41.225&lon=-73.1
Le serveur répond, avec une sortie curl verbeuse:
* 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
Sur la deuxième ligne de ce vidage, il est évident que le deuxième paramètre,, lon
n'est pas envoyé. Qu'est-ce que je fais mal? Merci.