我已经浏览了多篇有关此问题的帖子,但似乎无法查明问题所在。我正在为一个组织做一个捐赠页面,需要这个来检查贝宝是否正常工作。这是我的表单和 app.post 之间的错误。我得到的错误是: Cannot POST /path 。无法使用 /,因为它是我的联系表单的路径 app.get("/donate", (req, res) => res.sendFile(__dirname + "views/donate.html")); app.post("/done", (req, res) => { const create_payment_json = { intent: "sale", payer: { payment_method: "paypal", }, redirect_urls: { return_url: "https://asociacioncorazondiverso.org/donate.html", cancel_url: "https://asociacioncorazondiverso.org/donate.html", }, transactions: [ { item_list: { items: [ { name: "Donación", sku: "001", price: "10.00", currency: "USD", quantity: 1, }, ], }, amount: { currency: "USD", total: "10.00", }, description: "Donación", }, ], }; paypal.payment.create(create_payment_json, function (error, payment) { if (error) { throw error; } else { for (let i = 0; i < payment.links.length; i++) { if (payment.links[i].rel === "approval_url") { res.redirect(payment.links[i].href); } } } }); });形式:<div class="container-contact100-form-btn"> <h2>Donación de 10 USD</h2> <form action="/done" method="post"> <button type="submit" class="btn btn-warning" value="Buy">Donación</button> </form> </div>
1 回答
白衣染霜花
TA贡献1796条经验 获得超10个赞
您在 GitHub 上发布的代码以及在最初问题的评论中提供的代码显示了您在此处发布的内容与您实际使用的内容之间存在显着差异。
上面,您的<form>
'saction
参数明确设置为"/done"
(这似乎是正确的,因为这是您在接收服务器代码中定义的路径)。
但是,您似乎实际使用的代码/path
在同一<form>
元素声明中引用:
<form action="/path" method="post"> <button type="submit" class="btn btn-warning" value="Buy">Donación</button> </form>
调整action
参数以匹配您在上面的问题 ( ) 中的内容"/done"
,以便您的 HTML 文档POST
到达您定义的正确路径/端点。
<form action="/done" method="post"> <button type="submit" class="btn btn-warning" value="Buy">Donación</button> </form>
添加回答
举报
0/150
提交
取消