Im Wesentlichen eines FCC-Backend-Projekt Ich bin neu zu erstellen: https://timestamp-ms.herokuapp.com/Moment.js Rückkehr „31. Dezember 1969“
Es sieht aus wie mit meinem aktuellen Code, wenn ich folgendes eingeben: http://localhost:3000/1
Zurückgegeben so wie:
{"unix":"1","natural":"December 31, 1969"}
var express = require('express');
var path = require('path')
var app = express();
var moment = require('moment')
var port = 3000;
//homepage
app.get('/', function(req, res) {
var fileName = path.join(__dirname, 'index.html');
res.sendFile(fileName, function (err) {
if (err) {console.error(err)}
console.log('This is the homepage')
});
});
//input of the page
app.get('/:dataString', function(req, res) {
var dataString = req.params.dataString;
var output;
//Using regex, checks if the dataString has only number characters
if(/^[0-9]*$/.test(dataString)){
output = moment(dataString, "X")
} else{
output = moment(dataString, "MMMM D, YYYY")
}
if (output.isValid()){
res.json({
unix: output.format("X"),
natural: output.format("MMMM D, YYYY")
});
} else{
res.json({
unix: 'null',
natural: 'null'
});
}
})
app.listen(port,function(){
console.log("turn on. Port is: ", port)
})
Ich hätte Rückkehr 1. Januar 1970 erwartet, aber ich bin nicht sicher, wo der Fehler herkommt.
Aus den Moment.js Docs:
Um einen Moment Objekt zu erhalten, die UTC statt der Zeitzone der Maschine übernehmen wird, auf dem es läuft, können Sie
moment.utc()
verwenden http://momentjs.com/docs/#/parsing/utc/ "Standardmäßig wird Moment in lokaler Zeit analysiert und angezeigt." – wuworkshop