我使用GraphViz生成SVG格式的图形。我可以在节点中嵌入超链接。
我希望这个SVG文件由Web服务器提供。当用户单击其中一个链接时,我希望服务器运行一个Python脚本(参数依赖于链接),生成一个新的SVG,然后显示该SVG。
实现这一目标的最简单方法是什么?
答案 0 :(得分:0)
对于这么小的东西我可能会使用解析params的Flask:
from flask import request
from flask import Response
@app.route('/')
def generate_svg():
params = request.args
svg = SVGGenerate(**params)
return Response(svg, mimetype='image/svg+xml')
请注意,这是相当不安全的 - 您必须清除params以仅接受允许的值。
您可以使用https://pypi.python.org/pypi/schema或https://cerberus.readthedocs.org/en/latest/之类的内容来验证您从用户那里收到的数据。
Flask有一个很好的文档解释了你需要知道的其他内容。