当前位置: 首页 > 面试题库 >

烧瓶和React路由

和柏
2023-03-14
问题内容

我正在用React构建Flask应用程序,但最终遇到了路由问题。

后端负责成为API,因此某些路由如下所示:

@app.route('/api/v1/do-something/', methods=["GET"])
def do_something():
    return something()

以及通往React的主要路线:

@app.route('/')
def index():
    return render_template('index.html')

我在React应用程序中使用react-router,一切正常,react-
router带我进入,/something并获得了渲染视图,但是当我刷新页面时,/somethingFlask应用程序会处理此调用,并且会Not Found出错。

最好的解决方案是什么?我正在考虑重定向所有未调用的调用/api/v1/.../这是不理想的,因为我将返回应用程序的主页,而不是呈现React视图。


问题答案:

为此,我们使用了所有网址。

from flask import Flask
app = Flask(__name__)

@app.route('/', defaults={'path': ''})
@app.route('/<path:path>')
def catch_all(path):
    return 'You want path: %s' % path

if __name__ == '__main__':
    app.run()

您还可以加倍努力,重用Flask routing系统以与path客户端匹配相同的路由,以便可以将客户端需要的数据作为JSON嵌入HTML响应中。



 类似资料:
  • 我正在建立一个小网站,我已经在SQLAlChemy中拥有了我所有的模型。该网站将发布一些离线计算的信息。只有结果将被发布到一个精简的数据库,即它包含结果,而不是原始数据,但网站需要查询结果。 我将使用Flask,因为我的模型已经用Python驱动了(通过SWIG在C中进行了一些繁重的工作),我不想使用Django。 我敢肯定,以前有人问过这个问题,通常没有太多理由的咒语是“使用炼金术”。问题是为什

  • 我已经用flask在python上制作了一个restapi(端口:5000),我正在从一个网站(端口:80)发出get和post请求。我收到了cors错误,所以我尝试在RESTAPI中为站点创建一个响应头。但是我得到了导入错误: 我已经下载了烧瓶cors模块并升级它,并确保它是在正确的路径,但它仍然不工作。 API代码:

  • 我发现很难找到有关这方面的资料。会是什么?我如何解决这个问题?有哪些可能的修复方法? UWSGI日志文件 时钟来源:unix检测到CPU核数:4当前工作目录:/home/pi检测到二进制路径:/usr/local/bin/uwsgi!!!没有内部路由支持,重建与pcre支持!!!*警告:您在没有主进程管理器的情况下运行uWSGI进程数限制为7336内存页大小为4096字节检测到最大文件描述符号:6

  • 运行代码时,我不断收到以下错误: 类型错误:“响应”对象不可调用 这是我的代码...

  • 我正在尝试使用mod_wsgi在Ubuntu 16.04上通过apache安装flask应用程序。问题是wsgi脚本无法导入任何python模块。 我已经验证了wsgi脚本是可执行的,并用python独立运行了它。我还验证了我的flask应用程序可以自己运行,没有错误。我能够在我运行的任何其他python程序中导入所有模块。我还安装了带有pip和源代码的烧瓶。似乎什么都没用。 这是我的错误日志:

  • 我正在使用flask-RESTful开发API,并且对Flask的jsonify函数有问题。我正在使用flask-marshmlet进行JSON序列化。下面是一个非常简化的代码片段: 在本地,endpoint将返回具有键“data”和“error”的json;但是,当在Linux服务器上运行时,它会返回一个包含列表和在没有“data”和“error”键的情况下返回的结果。 我已经确定这种不一致是由