You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flask单参数POST路由持续返回404错误求助

Flask单参数POST路由持续返回404错误求助

我正在尝试用Flask作为后端,结合Electron做一个小型桌面应用,但遇到了一个奇怪的问题。

简单来说,我有一个路由/appendToList/<some_value>,应该通过JavaScript的fetch请求调用。它的功能很简单:接收传入的字符串值,把它追加到一个列表里供后续使用。

这个路由的代码是这样的:

routes.py

list_o_details:list[str]=[]
@app.route("/appendToList/<some_value>", methods=["POST"])
def appendToList(some_value):
    list_o_details.append(some_value)
    return {"value":f"Appended {some_value}"}

在Electron中运行时,控制台会弹出两个错误:

错误1:404,资源加载失败;错误2:Uncaught SyntaxError: Unexpected token '<', "<!doctype"... is not valid JSON

这些错误在打开桌面应用的控制台后,也会出现在终端里。

如果我单独运行Flask文件,用curl调用这个路由,同样会返回404错误:

curl请求返回404状态码

这就很奇怪了,因为我的文件里还有另外两个路由,都能正常工作。下面是完整的代码:

from flask import Flask
app = Flask(__name__)

list_o_details:list[str]=[]
list_o_sums:list[int]=[]

@app.route("/", methods=["GET","POST"])
def check():
    return {"result":"Server active!"}

@app.route("/add/<num1>/<num2>", methods=["POST"])
def addNumbers(num1,num2):
    num1=int(num1)
    num2=int(num2)
    sum = num1+num2
    list_o_sums.append(sum)
    return {"sum":f"{num1}+{num2}={sum}"}

@app.route("/appendToList/<some_value>", methods=["POST"])
def appendToList(some_value):
    list_o_details.append(some_value)
    return {"value":f"Appended {some_value}"}

print(app.url_map)

if __name__ == "__main__":
    app.run(debug=True)

我在代码里加了print(app.url_map),输出结果显示:

路由映射中包含/appendToList/<some_value>,不过这个输出打印了两次

看起来路由是被识别到的。

经过测试我发现,如果我复制一个addNumbers()改成只有一个参数的版本:

@app.route("/adding/<num1>", methods=["POST"])
def addingNumbers(num1):
    num1=int(num1)
    num2=12
    sum = num1+num2
    list_o_sums.append(sum)
    return {"sum":f"{num1}+{num2}={sum}"}

同样会出现404错误:

curl调用这个单参数路由也返回404

我以为是参数数量的问题,于是把appendToList()改成两个参数:

@app.route('/appendToList/<some_value>/<placeholder>', methods=["POST"])
def appendToList(some_value,placeholder):
    list_o_details.append(some_value)
    return {"value":f"Appended {some_value}"}

但错误依然存在。

我实在找不到问题所在,明明路由存在,那可能是路由本身的语法错误?但我看不出来哪里错了。有没有人知道这是怎么回事,该怎么解决?

提前感谢大家的帮助!

备注:内容来源于stack exchange,提问作者user24995271

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 14:48:07