Ответ 1
Я думаю, что это вопрос TZ, b/c разница между вашим GMT+0100
и вашим StartDate=2014-06-09T23:00:00.000Z
составляет 5 часов.
.
Проблема:
Ваше местное время в настоящее время BST (британское летнее время) эквивалентно GMT +1
Это будет время по умолчанию, когда вы вызываете свой вызов API.
Однако API был написан Google в Калифорнии, и они довольно эгоцентричны. Поэтому они автоматически преобразуют время, так как вы не предоставляете никаких инструкций форматирования date
.
Другими словами, Chrome делает конверсию для вас красиво, когда вы печатаете на console.log()
, но когда вы делаете свой $http.put
, Angular, без явного форматирования для вас, делает вызов с использованием его по умолчанию TZ (который равен PST
)
.
Разрешение
Вам нужно форматировать форматирование даты в вашей локали.
-
Angular шаблон
{{ date_expression | date : 'yyyy-MM-dd HH:mm:ss'}}
-
В JavaScript
$filter('date')(date, 'yyyy-MM-dd HH:mm:ss')
-
с использованием локализации
<html> <head> <title>My Angular page</title> <script src="angular-locale_en-uk.js"></script> ... </head> <body> ... </body> </html>