python - 如何从猎鹰应用程序提供静态网页?

标签 python falconframework

我是 python 的新手,因此也是 falcon 的新手。我开始开发一个 RESTful API,到目前为止,falcon 非常适合它。提供静态网页还有一些其他要求,我不想为此编写应用程序或生成服务器。

是否可以从 falcon 应用程序提供静态网页?

最佳答案

首先也是最重要的一点,我不得不说你不想那样做。你应该做的是在你的 Falcon 应用程序之上有一个 nginx 服务器,并直接从 nginx 提供任何静态文件(并将 API 调用重定向到 Falcon)。

也就是说,您可以轻松地从 Falcon 提供静态文件。这是您正在寻找的代码:

import falcon


class StaticResource(object):
    def on_get(self, req, resp):
        resp.status = falcon.HTTP_200
        resp.content_type = 'text/html'
        with open('index.html', 'r') as f:
            resp.body = f.read()

app = falcon.API()
app.add_route('/', StaticResource())

您可能希望将文件名设置为 url 中的参数,并在您的资源中获取它,这样您的静态资源就可以从目录中提供任何请求的文件。

关于python - 如何从猎鹰应用程序提供静态网页?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34821974/

相关文章:

python-3.x - pytest fixture 产量返回生成器而不是对象

python - 使用kivy时钟在执行前等待

python - 错误 :root:code for hash md5 was not found

python - 使用 Falcon REST API 提供 pdf 文件

python-3.x - 有没有办法在 Falcon 的单个类资源下添加多个 on_get 方法?

python - 如何在gunicorn中查看python应用程序的错误

python - 在 Windows 10 上安装 PyPotrace

python - Keras model.fit UnboundLocalError

python - 从 python 的覆盖范围中排除单元测试

python - 不支持的媒体类型,后端,请指导我