首页 > 解决方案 > 如何使用 cookie 从 next.config.js 重定向到某些特定语言

问题描述

下面你可以看到我的next.config.js

module.exports = {
  trailingSlash: true,
  async redirects() {
    return [
      {
        source: '/',
        destination: '/en',
        permanent: false
      }
    ]
  }
}

正如您从/我想将用户引导到特定语言中看到的那样。当用户第一次来到网站时,可以重定向/en/语言,但是当他改变网站上的语言时我应该记住它并且第二次将用户重定向到他选择的语言,我首先想到的也保存它cookies ,然后从那里得到它,但我还没有找到任何我可以使用的下一个 js 配置的解决方案。是否有可能使它变得更好,next.config.js或者可能有其他方法使它变得更好?

标签: next.js

解决方案


当您登陆站点的根目录时,Next.js 会自动检测语言环境。因此,如果应用程序支持,用户将被重定向到他的语言环境,否则将使用默认语言环境。

Next.js 也支持NEXT_LOCALEcookie,因此如果该 cookie 存在于用户的浏览器中,它将用于将用户重定向到 cookie 的区域设置,例如,无论用户的真实浏览器如何,NEXT_LOCALE=fr都会始终将用户重定向到该区域设置fr语言环境。

如果您的应用程序有办法让用户选择他的语言环境,只需使用所选语言环境设置 cookie,您就可以开始了。


推荐阅读