python – Flask:如何获取动态生成的图像文件的URL?

python – Flask:如何获取动态生成的图像文件的URL?,第1张

概述from flask import Flask, redirect, url_forapp = Flask(__name__)@app.route('/')def index(): generate_img("test.jpg"); return '<img src=' + url_for(filename='test.jpg') + '>' generat
from flask import Flask,redirect,url_forapp = Flask(__name__)@app.route('/')def index():        generate_img("test.jpg");        return '<img src=' + url_for(filename='test.jpg') + '>'

generate_img()将随机图像输出到当前目录(与此脚本相同的文件夹).

我得到404,我导航到mydomain.com/test.jpg但它不在那里.

解决方法 假设实际生成了图像(也就是调用了index()),404的原因是没有指向图像的路径,所以Flask会告诉你没有mydomain.com/test.jpg .像Apache或Nginx这样的静态网络服务器默认会映射从根到URL的路径,但普通的Flask / Werkzeug / Wsgi设置不会这样做.

也许你想创建一个直接返回图像的资源?

编辑:类似的东西应该能够提供图像.

@app.route("/imgs/<path:path>")def images(path):    generate_img(path)    fullpath = "./imgs/" + path    resp = flask.make_response(open(fullpath).read())    resp.content_type = "image/jpeg"    return resp

EDIT2:当然,generate_img可能会被重写,因此它永远不会写入磁盘,而是直接返回图像数据.

总结

以上是内存溢出为你收集整理的python – Flask:如何获取动态生成的图像文件的URL?全部内容,希望文章能够帮你解决python – Flask:如何获取动态生成的图像文件的URL?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1194603.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存