Runtime Config

Uyarı:

Uygulamanıza çalışma zamanı yapılandırması eklemek için next.config.js adresini açın ve publicRuntimeConfig ve serverRuntimeConfig yapılandırmalarını ekleyin:

next.config.js
module.exports = {
  serverRuntimeConfig: {
    // Will only be available on the server side
    mySecret: 'secret',
    secondSecret: process.env.SECOND_SECRET, // Pass through env variables
  },
  publicRuntimeConfig: {
    // Will be available on both server and client
    staticFolder: '/static',
  },
}

Yalnızca sunucuya yönelik çalışma zamanı yapılandırmasını serverRuntimeConfig altına yerleştirin.

Hem istemci hem de sunucu tarafı kodu tarafından erişilebilen her şey publicRuntimeConfig altında olmalıdır.

Otomatik Statik Optimizasyonu devre dışı bırakmak için publicRuntimeConfig adresini kullanan bir sayfa getInitialProps veya getServerSideProps adresini kullanmalı ya da uygulamanız getInitialProps adresli bir Özel Uygulamaya sahip olmalıdır. Çalışma zamanı yapılandırması, sunucu tarafında işlenmeden hiçbir sayfa (veya bir sayfadaki bileşen) tarafından kullanılamayacaktır.

Uygulamanızdaki çalışma zamanı yapılandırmalarına erişmek için next/config adresini kullanın:

import getConfig from 'next/config'
import Image from 'next/image'
 
// Only holds serverRuntimeConfig and publicRuntimeConfig
const { serverRuntimeConfig, publicRuntimeConfig } = getConfig()
// Will only be available on the server-side
console.log(serverRuntimeConfig.mySecret)
// Will be available on both server-side and client-side
console.log(publicRuntimeConfig.staticFolder)
 
function MyImage() {
  return (
    <div>
      <Image
        src={`${publicRuntimeConfig.staticFolder}/logo.png`}
        alt="logo"
        layout="fill"
      />
    </div>
  )
}
 
export default MyImage