当前位置: 首页 > 知识库问答 >
问题:

如何从post请求中获取数据?

薛云瀚
2023-03-14

我尝试做的是从同一个站点发布数据并从它创建一个新的订单(当提交按钮被点击时)。我没有任何信息在我的请求。身体,我怀疑是在我的ejs出了问题,任何反馈是非常感谢的。

我的ejs文件:


<h1>Orders</h1>

<p>Orders from Coffee eShop.</p>

<pre><%#= JSON.stringify(res, null, 4) %></pre>
<form class="label-left" method="post">
    <table>
        <tr>
            <th>Order ID </th>
            <th>Customer ID </th>
            <th>Name </th>
            <th>Date </th>
            <th>Product quantity </th>
            <th>Status </th>
        </tr>
    <% for (const row of res) { %>
        <tr>
            <td><%= row.order_id %></td>       <!-- trying to post this -->
            <td><%= row.customer_id %></td>    <!-- trying to post this -->
            <td><%= row.customer_name %></td>  <!-- trying to post this -->
            <td><%= row.order_date %></td>     <!-- trying to post this -->
            <td><%= row.produkter_antal %></td><!-- trying to post this -->
            <td><%= row.order_status %></td>   <!-- trying to post this -->
        </tr>
    <% }; %>
    </table>
    <br>
    <td><input type="submit" name="doit" value="Create new order"></td> <!-- trying to get this work -->
    <br><br>
    <a href="/eshop/customer" id="customerlink">Customers</a>
</form>
<br>

<%- include("footer"); %>

和我的js文件:

router.get("/order/:id", async (req, res) => {
    let id = req.params.id;
    let data = {
        title: `Customers order ${id} ${sitename}`,
        ordernummer: id
    }

    data.res = await bank.showCustomerOrder(id);

    res.render("eshop/order", data);
});

router.post("/order/:id", urlencodedParser, async (req, res) => {
    console.log(req.body);
    // this doesnt work... I dont get any info in req.body here
});

共有1个答案

廖琨
2023-03-14

只有成功的表单控件(输入,按钮,文本区域,选择)才会为表单提交提供数据。

您唯一拥有的表单控件是提交按钮,但由于它没有name属性,因此不会成功。

添加一些窗体控件(可能需要一些元素)。

您可能会发现MDN的表单指南很有用,它也是使用Express表单的指南。

 类似资料:
  • 问题内容: 我有以下django模板(将http:// IP / admin / start /分配给一个名为view的假设视图): 是视图中引用的Django模型的。每当单击“开始”提交输入时,我都希望“开始”视图在返回渲染页面之前使用函数中的数据。如何将POST(在本例中为隐藏输入)中发布的信息收集到Python变量中? 问题答案: 另外,你的隐藏字段还需要一个可靠的名称,然后是一个值: 然后

  • 原理 对于POST请求的处理,koa2没有封装获取参数的方法,需要通过解析上下文context中的原生node.js请求对象req,将POST表单数据解析成query string(例如:a=1&b=2&c=3),再将query string 解析成JSON格式(例如:{"a":"1", "b":"2", "c":"3"}) 注意:ctx.request是context经过封装的请求对象,ctx.

  • 问题内容: 我正在尝试让我的函数返回http get请求,但是,无论如何,它似乎在?scope中丢失了。我对Node.js不熟悉,因此不胜感激 问题答案: 当然,您的日志会返回:您在完成请求之前先进行日志。问题不是范围,而是 异步性 。 是异步的,这就是为什么它将回调作为参数的原因。做您在回调中要做的事情(传递给的):

  • 客户端可能会发送多个查询参数,如: 我需要获取所有查询参数并将其提取为字符串

  • 我正在使用curl发出一个POST请求,如下所示 但在servlet中,我无法获取任何数据。 有什么建议吗?还有一种在数据内部获取数据的更好方法,如?

  • 问题内容: 这是我在index.html上的代码: 我如何编程test.php以获取在AJAX API中发送的“数据”? 问题答案: 您在这里问一个非常基本的问题。您首先应该阅读一些Ajax教程。只是为了帮助您(假设您知道发送数据的GET和POST方法),数据中的“数据”:函数(数据)中的“数据”与“数据”不同。为了清楚起见,您应该为它们命名不同,如下所示: 这清楚地表明,一个是要通过POST参数