Tôi chắc rằng câu trả lời cho điều này sẽ là một số vấn đề về mã hóa ký tự rõ ràng ...
Tôi đang sử dụng curl trên dòng lệnh để kiểm tra một số điểm cuối trong ứng dụng python. Điểm cuối nhận các tham số url của vĩ độ và kinh độ. Không có gì quá đặc biệt. Tôi đặt lệnh:
curl -v -L http://localhost:5000/pulse/?lat=41.225&lon=-73.1
Máy chủ phản hồi, với đầu ra dài dòng:
* 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
Trên dòng thứ hai của kết xuất đó, rõ ràng là thông số thứ hai lon
, không được gửi. Tôi đang làm gì sai? Cảm ơn.