簡體   English   中英

Next js - 如何在 url 中為 api 傳遞多個參數?

[英]Next js - How to pass multiple parameters in url for api?

我能夠傳遞一個參數並從下一個 js api 獲得結果

這些文檔非常有幫助 - https://nextjs.org/docs/api-routes/dynamic-api-routes

/api/posts/[postId].js

上述方法有效,但是否可以選擇傳遞另一個參數,如下所示?

/api/posts/[postId][userId].js

文件夾名稱當前為 [postId]。 我嘗試將其重命名為 [postId][userId]

我的 api 代碼是

  let postVotes = await req.db.collection('votesPosts').count({"post":req.query.postId,"user":req.query.userId})

通常,路由不處理 URL 路徑的單個段中的多個參數。 每個段只能有一個參數:

/api/entity/{param1}/{param2}/sub/{param3}

現在在 Next JS 中,您也需要將它們分開以有 2 個帶參數的段:

/api/posts/[postId]/[userId]

這將解析為 2 個可能的文件:

/api/posts/postId]/[userId]/index.js

如果您使用參數目錄+索引文件執行此操作,或者

/api/posts/postId]/[userId].js

如果您使用參數文件執行此操作。

使用目錄 + 索引文件執行此操作允許您添加固定段,例如:

/api/posts/postId]/[userId]/popular.js
/api/posts/postId]/[userId]/private.js

然后,您可以像對 2 個參數所做的那樣進行 API 調用。

暫無
暫無

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

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