next.js 本地开发环境跨域
利用rewrites
重写代理
在next.config.js
中:
1 | async rewrites() { |
利用headers
配置返回头
在next.config.js
中:
1 | const CORS_HEADERS = [ |
利用middleware.js
中间件进行跨域设置
1 | // middleware.js |
在服务器环境中跨域,例如 vercel
新建vercel.json
的配置文件
利用route
路由配置
在next.config.js
中:"src": "/admin-api/*"
表示访问/admin-api
开头的页面应用下面的规则
1 | { |
利用rewrites
配置重写请求路径
配置next.config.js
:
访问/admin-api/
的请求会去执行根目录下api
文件夹中的proxy.js
1 | { |
在api
文件夹下创建proxy.js
文件:
1 | // 该服务为 vercel serve跨域处理 |
在[vercel](https://vercel.com/)
控制台中查看proxy.js
的执行情况
注意:
根据 next.js
官方文档 ,vercel.json
文件中不能同时配置rewrites
和headers
以及routes
,否则会导致 Git 自动部署失败的问题