Javascript-如何获取特定国家的当前时间和日期?新西兰。
当前网站托管在AWS ec2中。 所以当我使用Date函数时,它返回aws本地时间和日期。 如何在此服务器中获取当前新西兰时间?您可以尝试以下方法: 如果服务器是Linux服务器,则使用Javascript-如何获取特定国家的当前时间和日期?新西兰。,javascript,Javascript,当前网站托管在AWS ec2中。 所以当我使用Date函数时,它返回aws本地时间和日期。 如何在此服务器中获取当前新西兰时间?您可以尝试以下方法: 如果服务器是Linux服务器,则使用 var dateTime=new Date(linuxserveTime*1000); 你有两种选择 修改并将其发送到客户端浏览器 从web浏览器客户端时区计算新西兰时间 如果遵循第一个选项,则可以使用HTTP请求获取服务器UTC时间 对于第二个选项,您需要在客户端浏览器中使用JavaScript计算新西兰的
var dateTime=new Date(linuxserveTime*1000);
你有两种选择
// create Date object for current location
var date = new Date();
// convert to milliseconds, add local time zone offset and get UTC time in milliseconds
var utcTime = date.getTime() + (date.getTimezoneOffset() * 60000);
// time offset for New Zealand is +12
var timeOffset = 12;
// create new Date object for a different timezone using supplied its GMT offset.
var NewZealandTime = new Date(utcTime + (3600000 * timeOffset));
注意:这不会反映夏令时。使用第三方api显示特定国家/地区的时间。您可以从中使用api。打一个ajax电话,了解你的时间。您可以使用普通javascript或任何ajax库来实现这一点。这里我介绍了两种方法:1)纯javascript和2)使用axios 香草JS
function getTime(url) {
return new Promise((resolve, reject) => {
const req = new XMLHttpRequest();
req.open("GET", url);
req.onload = () =>
req.status === 200
? resolve(req.response)
: reject(Error(req.statusText));
req.onerror = (e) => reject(Error(`Network Error: ${e}`));
req.send();
});
}
axios({
url:"http://worldtimeapi.org/api/timezone/Pacific/Auckland",
method: "get",
})
.then((response) => {
let dateObj = response.data;
let dateTime = dateObj.datetime;
console.log(dateObj);
console.log(dateTime);
})
.catch((err) => {
console.log(err);
});
现在使用此函数进行ajax调用
let url = "http://worldtimeapi.org/api/timezone/Pacific/Auckland";
getTime(url)
.then((response) => {
let dateObj = JSON.parse(response);
let dateTime = dateObj.datetime;
console.log(dateObj);
console.log(dateTime);
})
.catch((err) => {
console.log(err);
});
AXIOS
function getTime(url) {
return new Promise((resolve, reject) => {
const req = new XMLHttpRequest();
req.open("GET", url);
req.onload = () =>
req.status === 200
? resolve(req.response)
: reject(Error(req.statusText));
req.onerror = (e) => reject(Error(`Network Error: ${e}`));
req.send();
});
}
axios({
url:"http://worldtimeapi.org/api/timezone/Pacific/Auckland",
method: "get",
})
.then((response) => {
let dateObj = response.data;
let dateTime = dateObj.datetime;
console.log(dateObj);
console.log(dateTime);
})
.catch((err) => {
console.log(err);
});
希望有帮助。但要记住一件事,那就是第三方服务。如果他们选择终止服务,您的代码将中断。快乐编码。是服务器端的JavaScript(节点,或某物)吗?你需要学习时间偏移并将它设置为服务器时区到NZST。你真的应该考虑使用一个已经建立的解决方案,因为你可能没有考虑到像处理日光节约之类的挑战。尝试