分享
三行代码  ›  专栏  ›  技术社区  ›  Christian Harjuno

将快速查询与路由分离

  •  0
  • Christian Harjuno  · 技术社区  · 5 天前

    我正在尝试创建一个快速路径,基本上允许我输入一个股票名称作为查询,方法是 ?symbol= 在URL上。在股票名称之后,我想添加一条新路线。

    const express = require("express")
    const app = express()
    
    app.get("/api/v1/equity/latest", (req, res) => {
        res.send(req.query)
    })
    
    app.listen (3000, () => {
        console.log("listening to port 3000")
    })
    

    localhost:3000/api/v1/equity?symbol=BBNI/latest/ 然后看看收到的查询,它作为 symbol = BBNI/latest/

    如何将符号查询与下一个查询分开 /latest 路线?

    1 回复  |  直到 5 天前
        1
  •  0
  •   Evert    5 天前

    这是一个奇怪的URL模式,因为如果任何开发人员看到此URL:

    /v1/equity?symbol=BBNI/latest/
    

    symbol 参数 BBNI/latest/ BBNI

    但是,如果您想“分离”这些部分,您只需执行以下操作:

    const [symbol, latest] = req.query.symbol.split('/', 2);
    

    但您可能应该设计一个更好的URL结构。

        2
  •  0
  •   Boris    5 天前

    我认为这不是一个好方法。

    const express = require("express")
    const app = express()
    
    app.get("/api/v1/equity/:symbol/latest", (req, res) => {
        res.send(req.params.symbol)
    })
    
    app.listen (3000, () => {
        console.log("listening to port 3000")
    })