实际上是否可以使用CGI中的Flask?
如果是这样,怎么样?我知道CGI+Flask的简洁和漂亮的文档,但它看起来像request.args.get('varname')
函数不起作用,当作为CGI运行时。当它作为WSGI运行时,它对我来说在同一个(Apache,Ubuntu 12.10)服务器上工作。
在我在命令行上运行CGI脚本之后,我得出结论(或强烈怀疑,而不是)args.get()
无效。它不会在QUERY_INFO中拾取任何东西。
我是否遗漏了一般关于CGI的重要信息,这是Flask中的一个错误,或者这里发生了什么?
修改 的
Flask的文档在git中更新,但在撰写本文时还没有在主页上。只是不要在Flask应用程序中使用任何print
,CGI应该可以正常工作。
答案 0 :(得分:2)
args是一个红鲱鱼。
问题出在CGI中,任何 print
都会弄乱输出,在这种情况下它会搞乱标题。解决方案:当作为CGI运行时,不要print
任何调试信息或任何内容。
也;
"... Google’s App Engine, where execution happens in a CGI-like environment"
显然,Google App Engine与CGI环境类似,print
can be an issue there {{3}}。