Javascript Date.toLocaleString() игнорируется в API-платформе Apigee

Я разрабатываю API-прокси на платформе Apigee API. Я использую сценарий Javascript для преобразования даты в удобное для пользователя представление. Итак, у меня есть этот код:

var endDate = new Date(2014, 01, 01, 00, 00, 00);
var options = {
  localeMatcher: 'best fit',
  weekDay: 'short',
  year: 'numeric',
  month: 'short',
  day: '2-digit',
  hour: '2-digit',
  minute: '2-digit',
  second: '2-digit',
  timezone: 'America/El_Salvador',
  timeZoneName: 'short'
};
var friendly_endDate = endDate.toLocaleDateString('es-SV', options);

И я всегда получаю дату в формате en-US, например:

February 1, 2014 12:00:00 UTC

Часовой пояс, параметры и локаль игнорируются. это нормально? Я что-то пропустил?


person rcnavas    schedule 18.03.2014    source источник


Ответы (3)


Последняя версия Rhino (1.7R4) была выпущена 18 июня. /2012. Согласно документам Mozilla по Date.toLocaleDateString аргументы локалей и параметров были добавлены с помощью API интернализации ECMAScript, похоже, что он вышел в декабре 2012 года.

Я думаю, что вам лучше всего найти библиотеку JavaScript, которую можно включить в вашу политику, и использовать ее. Инструкции по включению JavaScript см. в документации по политике Apigee в отношении JavaScript. библиотеки.

person Mike Dunker    schedule 18.03.2014

Я использую библиотеку moment JS. Очень красиво спроектируйте простую библиотеку для манипуляций с датой на базе JS. Попробуйте.

person Srikanth    schedule 18.03.2014

У нас также есть рабочий пример, который показывает, как работать с библиотеками JavaScript, включенными в прокси-сервер API:

https://github.com/apigee/api-platform-samples/tree/master/sample-proxy/base64encoder

person ap-andrew    schedule 18.03.2014