搜尋

首頁  >  問答  >  主體

NextJS 使用 Django API - 如何選擇最佳模式

我在數位海洋 Droplet 上執行 GeoDjango,並且正在將專案從 VueJs 重寫為 Vercel 上託管的 NextJs。

在 Vue 中,我們有與儲存相關的服務模式,負責取得和更新資料。

我發現獲取部分非常好,但我仍在嘗試找出更新資料的最佳方法。

我應該如何在不使用 NextJs API 資料夾的情況下建立 CRUD 層(我不想讓另一個後端呼叫我的 Django 後端)。

我應該使用上下文嗎?

我應該使用中間件嗎?

我應該建立自訂服務嗎?那要怎麼稱呼他們呢? NextJs 中是否有相當於 store 的東西?

我這麼問是因為我想避免混亂,因為現在我在頁面上使用 fetch POST。我正在使用 NextAuth,它為我提供了帶有 jwt 令牌的上下文。

感謝您的任何提示

P粉032977207P粉032977207412 天前448

全部回覆(1)我來回復

  • P粉373596828

    P粉3735968282024-01-11 09:55:04

    對於 Next.js,您可以使用 重寫以將請求代理到您的後端。這樣您就可以從相對 URL 存取現有後端,就像它們位於 API 路由中一樣。您可以為每個路由明確執行此操作,或者您可以使用增量採用模式,該模式將在將請求代理回 django 伺服器之前檢查 Next.js 應用程式中的現有路由。

    // next.config.js
    module.exports = {
      async rewrites() {
        return {
          fallback: [
            {
              source: '/api/:path*',
              destination: `https://your.django.app/api/:path*`,
            },
          ],
        }
      },
    }

    回覆
    0
  • 取消回覆