【发布时间】:2016-07-26 08:22:21
【问题描述】:
所以我正在尝试使用flask 制作一个API,然后将它与javascript 一起使用以在浏览器上显示一些图像,但是我在单元测试图像发送(通过Flask)是否正常工作时遇到了问题。这是我现在的烧瓶代码
@api.route("/pictures/<picture_name>")
def send_picture(picture_name):
"""Used to send the requested picture from the pictures folder."""
return api.send_static_file(picture_name)
然后我尝试使用以下命令下载例如图像puppy.png
curl -O --request GET "http://localhost:8000/pictures/tank.png"
我可以在我的浏览器上打开相同的链接并完美地查看文件,因此我知道send_static_file 函数工作正常。但是上面的curl 命令以无法打开的方式下载文件。还有什么我做错了吗?
我对 Python 和 Flask 还不是很熟悉...
编辑:不知何故,同样的事情与wget 一起工作得很好,所以我想知道这是否是我进行 curl 调用的方式的问题。有什么我做错了吗?有人能解释一下究竟是如何通过 HTTP 下载的吗?如在获取请求中是否有任何特殊标头?如果不是,那么响应的格式是什么?文件是如何存储的?
【问题讨论】:
-
您使用
curl方法时显示的错误是什么? -
另外你不需要
--request标签,因为它默认为GET -
@GIRISHRAMNANI 我编辑了我的问题。对于第二条评论,我喜欢把它放在那里明确:)
-
如果您使用
-o明确提供文件的名称,它是否有效,例如。curl -o tank.png --request GET "http://localhost:8000/pictures/tank.png" -
不,我没有尝试过。为什么会有所作为?
标签: javascript python http curl flask