インストール
yarn add nextjs-basic-auth
設定
import initializeBasicAuth from 'nextjs-basic-auth'
const users = [
{ user: 'user', password: 'Password@1' }
]
export default initializeBasicAuth({ users })
import basicAuthCheck from '@/lib/basicAuth'
...省略
MyApp.getInitialProps = async (appContext) => {
const { req, res } = appContext.ctx
if (req && res && process.env.ENABLE_BASIC_AUTH) {
await basicAuthCheck(req, res)
}
const appProps = await App.getInitialProps(appContext)
return { ...appProps }
}
export default MyApp
envの設定
module.exports = {
env: {
ENABLE_BASIC_AUTH: process.env.ENABLE_BASIC_AUTH,
},
}