나는 이것에 대한 대답이 고통스럽고 명백한 문자 인코딩 문제가 될 것이라고 확신합니다 ...
파이썬 앱에서 일부 엔드 포인트를 테스트하기 위해 명령 줄에서 curl을 사용하고 있습니다. 끝점은 위도와 경도의 URL 매개 변수를 사용합니다. 너무 특별한 것은 없습니다. 나는 명령을 넣었다.
curl -v -L http://localhost:5000/pulse/?lat=41.225&lon=-73.1
서버가 verbose curl 출력으로 응답합니다.
* 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
덤프의 두 번째 줄에서 두 번째 매개 변수, lon
가 전송되지 않는 것이 분명합니다 . 내가 도대체 뭘 잘못하고있는 겁니까? 감사.