Javascript 使用express&;节点,如何在HTTP GET参数中发送JSON?

Javascript 使用express&;节点,如何在HTTP GET参数中发送JSON?,javascript,node.js,express,Javascript,Node.js,Express,我正在使用express,希望将JSON传递给我的HTTP GET route函数: app.get('/myRoute/:data',(req,res)=>{} 我不能使用HTTPPOST,所以我必须能够在url中传递JSON 可以这样做吗?您可以使用JSON.stringify和encodeURI使您的JSON url友好,如下所示: encodeURI(JSON.stringify({a:'b'})) 然后只需调用GET函数,结果如下: /myRoute/%7B%22a%22:%22b%2

我正在使用express,希望将JSON传递给我的HTTP GET route函数:
app.get('/myRoute/:data',(req,res)=>{}

我不能使用HTTPPOST,所以我必须能够在url中传递JSON


可以这样做吗?

您可以使用
JSON.stringify
encodeURI
使您的JSON url友好,如下所示:
encodeURI(JSON.stringify({a:'b'}))

然后只需调用GET函数,结果如下:

/myRoute/%7B%22a%22:%22b%22%7D

您可以通过解析函数来获取传递的JSON:

app.get('/myRoute/:data', (req, res) => {
    const parsedJSONFromParam = JSON.parse(unescape(req.params.data));
  });

在同一分钟单独提问和回答?:我知道,但答案发生在提问的同一分钟是非常“有趣的”:)只要
JSON.stringify()
将JSON转换为字符串,然后
JSON.parse()
ton转换回JSON:)