现在,我在http://localhost:3000/,但在prod上,我将在一个不同的url中,例如http://example.com/,如何在getServerSideProps中获得完整的浏览器url?我必须得到http://localhost:3000/http://example.com/,如果字符串不包含端口,就可以了

推荐答案

"next/router"也提供了一些方法,您可以使用这些方法.例如:

import { useRouter } from 'next/router';

const RouterObject = () => {
  const { asPath, pathname, req, query, res } = useRouter();
  console.log(asPath);
  console.log(pathname); 
  console.log('host: ', req.headers.host);
}

如果有主机,可以判断是否包含localhost.然后你就知道你身处当地的环境.

Javascript相关问答推荐

为什么使用MAX_SAFE_INTEGER生成随机整数时数字分布不准确?

布局样式在刷新时不持续

在JavaScript中,是否有一种方法可以创建自定义thable,在等待某些代码后自动触发它?

为什么JavaScript双边字符串文字插值不是二次的?

GrapeJS -如何保存和加载自定义页面

扫描qr code后出错whatter—web.js

实现JS代码更改CSS元素

try 使用javascript隐藏下拉 Select

在使用REACT更改了CSS类之后,无法更改CSS样式

将数组扩展到对象中

当标题被点击时,如何使内容出现在另一个div上?

按什么顺序接收`storage`事件?

未捕获语法错误:Hello World中的令牌无效或意外

使用线性插值法旋转直线以查看鼠标会导致 skip

Clip-Path在网页浏览器(Mozilla、Edge、Chrome)上不能正常工作,但在预览版Visual Code Studio HTML、CSS、JS上却能很好地工作

如何使用Cypress在IFRAME中打字

有没有办法在R中创建一张具有多个色标的热图?

如何检测当前是否没有按下键盘上的键?

如何向内部有文本输入字段的HTML表添加行?

使用Java脚本替换字符串中的小文本格式hashtag