簡體   English   中英

Node JS - Express.js 獲取帶有多個參數的查詢

[英]Node JS - Express.js get query with multiple parameters

我對 JavaScript 和 Node JS 很陌生,我遇到了這樣的情況。 當我嘗試使用單個參數調用express.js get時一切正常,但是當我嘗試使用多個參數調用get時,它會修剪查詢。 例如我有這樣的調用和功能

app.get('path/data', myFunc);
// in another file
function myFunc(req, res) {
    // do some stuff
}

當 url 是path/data?id=5path/data?name=foo一切都很好。 但是,當我在 myFunc 中使用例如path/data?id=5&name=foo這樣的 url 時,我得到的 url 為path/data?id=5 所以我得到了 url 的第一部分 - &符號之前是什么。

現在我做錯了什么? 有什么我想念的嗎? 如何在不修剪的情況下在myFunc獲取整個 url?

app.get('path/data?:id?:name')

對於檢索值,請使用req.query.idreq.query.name

要訪問 REST api,您需要點擊: http://localhost:8080/demo?id=3&name=stack

因此,通過此您可以在 api 中添加多個參數。

希望這可以幫助。

我發現了問題。 我是通過curl請求的,結果證明 shell 命令會在 url 中有&情況下進行修剪。 所以不需要像這樣添加引號

curl "path/data?id=5&name=foo"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM