在Next.js中欺骗客户端用户代理

7rfyedvj  于 2023-10-18  发布在  其他
关注(0)|答案(2)|浏览(118)

我有一个重定向iPhone的路由,但没有很好的方法来测试它:

export const getServerSideProps = async ({ req }) => {
  const isIphone = req.headers['user-agent'].match(/iPhone/i);

  if (isIphone) {
    return {
      redirect: {
        ...
      }
    }
  }

  return {
    props: {}
  };
}

有没有什么方法可以欺骗用户代理头客户端?似乎更改navigator.userAgent属性并不足以满足next.js在后台使用的任何fetch函数。

mwkjh3gx

mwkjh3gx1#

1.这是一个关于浏览器电击的问题吗?如果是- Safari >开发>进入响应式设计模式>下拉菜单
1.使用iPhone模拟器。
希望你没有使用任何添加头的中介来访问。

7uhlpewt

7uhlpewt2#

你可以使用userAgent助手:

import { userAgent } from 'next/server';

// ...
const isMobile = userAgent(req).device.type === 'mobile'

相关问题