在 GET 請求中進行 POST 好習慣嗎?
P粉434996845
P粉434996845 2023-09-12 09:11:31
0
1
548

正如標題所說,我想在發出GET請求的同時發出POST請求。這是好的做法嗎?還是一個巨大的禁忌?

這是因為我的應用程式功能的工作原理如下:在頁面載入時,它需要取得使用者資料。如果使用者資料不在資料庫中,則應將其新增至資料庫。沒有註冊。我們正在追蹤頁面上的所有用戶。 (他們瀏覽該網站的次數和 ID)

編輯:我們不追蹤使用者登入資訊。或給他們報名。我們會在我們的資料庫中記錄他們瀏覽該網站的次數。

我嘗試使用 GET 設定它,然後 onSuccess 運行 POST 請求,但這似乎有點過頭了。

export default function handler(req, res) {
  if (req.method === 'GET') {
    // check db if user is there (db.get())
    // if not run the PUT request. (db.save())
  } 
}

P粉434996845
P粉434996845

全部回覆(1)
P粉244155277

也許有更好的方法。例如,如果您使用 DynamoDB,則可以使用 更新項目。這允許您更新項目(如果存在),或發布新項目(如果不存在)。此外,透過使用 ReturnValues 參數,該操作將傳回您想要的任何屬性。您可以透過其中一個呼叫來獲得您想要的一切。

但如果沒有,這對我來說看起來不錯。如果您想避免巢狀回調,可以使用 asyncawait 語法分隔呼叫:

export default function handler(req, res) {
  if (req === "GET") {
    const result = await getRequest();
    if (result.isEmpty()) {
      postRequest();
    }
  }
}
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板