gpt4 book ai didi

curl - 为什么curl 会截断这个查询字符串?

转载 作者:行者123 更新时间:2023-12-03 05:10:06 25 4
gpt4 key购买 nike

我确信这个问题的答案将是一些非常明显的字符编码问题......

我在命令行上使用curl 来测试python 应用程序中的一些端点。端点采用纬度和经度的 url 参数。没什么特别的。我输入命令:

curl -v -L http://localhost:5000/pulse/?lat=41.225&lon=-73.1

服务器响应,并带有详细的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 没有被发送。我究竟做错了什么?谢谢。

最佳答案

“我做错了什么”这个问题的答案是,shell 看到与号 (&) 并认为这是命令的结尾(并将其置于后台) 。您需要引用它,这就是引用该字符串的答案起作用的原因。您可以轻松地运行此命令:

curl -v -L "http://localhost:5000/pulse?lat=41.225&lon=-73.1"

关于curl - 为什么curl 会截断这个查询字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9100099/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com