2016-04-12 10 views
0

Office 365 REST APIは、タイムゾーンを含む地域の日付と時刻を返します。ドキュメントで説明されているように、タイムゾーンはthis standard Windows list of zonesの文字列で指定します。ここではJSONで、APIによって返された日付/時刻値の例です:Office 365 REST API:夏時間に合わせて修正する

{ DateTime: '2016-04-13T08:00:00.0000000', 
    TimeZone: 'Pacific Standard Time' } 

はあなたがJavaScriptのDateオブジェクトにそれを解析するために、例えば---この日付を使用したいとしましょう。この日付を解析するには、オフセットを取得するためにテーブル内のタイムゾーン名を調べるだけでよいと思うかもしれません。

しかし、それは正しくない!その日付は4月になっているため、実際には昼間に指定されています。その予定が反映されるのは、すべての出現にもかかわらず、PSTではなく8 AM PDTです。日付には夏時間の表示が含まれず、「太平洋夏時間」はthat listに従った有効なタイムゾーンでさえありません。

APIは、これらの値の1つに対して実際の昼光に敏感なタイムゾーンオフセットを取得するための機能を備えていますか? JavaScriptクライアントでDSTを補正するために私自身で行っていますか?

+0

try moment.js、これはこのサイトで役立つはずです:http://momentjs.com/timezone/ – Shawn

答えて

0

太平洋夏時間/太平洋夏時間はタイムゾーンではありません(タイムゾーンは地理に基づいています)。 Office 365 REST APIのTimeZoneプロパティは、Windowsがサポートする任意のタイムゾーン、および次のタイムゾーン名に設定できます。

Etc/GMT+12 

Etc/GMT+11 

Pacific/Honolulu 

America/Anchorage 

America/Santa_Isabel 

America/Los_Angeles 

America/Phoenix 

America/Chihuahua 

America/Denver 

America/Guatemala 

America/Chicago 

America/Mexico_City 

America/Regina 

America/Bogota 

America/New_York 

America/Indiana/Indianapolis 

America/Caracas 

America/Asuncion 

America/Halifax 

America/Cuiaba 

America/La_Paz 

America/Santiago 

America/St_Johns 

America/Sao_Paulo 

America/Argentina/Buenos_Aires 

America/Cayenne 

America/Godthab 

America/Montevideo 

America/Bahia 

Etc/GMT+2 

Atlantic/Azores 

Atlantic/Cape_Verde 

Africa/Casablanca 

Etc/GMT 

Europe/London 

Atlantic/Reykjavik 

Europe/Berlin 

Europe/Budapest 

Europe/Paris 

Europe/Warsaw 

Africa/Lagos 

Africa/Windhoek 

Europe/Bucharest 

Asia/Beirut 

Africa/Cairo 

Asia/Damascus 

Africa/Johannesburg 

Europe/Kiev 

Europe/Istanbul 

Asia/Jerusalem 

Asia/Amman 

Asia/Baghdad 

Europe/Kaliningrad 

Asia/Riyadh 

Africa/Nairobi 

Asia/Tehran 

Asia/Dubai 

Asia/Baku 

Europe/Moscow 

Indian/Mauritius 

Asia/Tbilisi 

Asia/Yerevan 

Asia/Kabul 

Asia/Karachi 

Asia/Tashkent 

Asia/Kolkata 

Asia/Colombo 

Asia/Kathmandu 

Asia/Almaty 

Asia/Dhaka 

Asia/Yekaterinburg 

Asia/Rangoon 

Asia/Bangkok 

Asia/Novosibirsk 

Asia/Shanghai 

Asia/Krasnoyarsk 

Asia/Singapore 

Australia/Perth 

Asia/Taipei 

Asia/Ulaanbaatar 

Asia/Irkutsk 

Asia/Tokyo 

Asia/Seoul 

Australia/Adelaide 

Australia/Darwin 

Australia/Brisbane 

Australia/Sydney 

Pacific/Port_Moresby 

Australia/Hobart 

Asia/Yakutsk 

Pacific/Guadalcanal 

Asia/Vladivostok 

Pacific/Auckland 

Etc/GMT-12 

Pacific/Fiji 

Asia/Magadan 

Pacific/Tongatapu 

Pacific/Apia 

Pacific/Kiritimati 

この場合、アプリはそれ自体を処理する必要があります。つまり、JavaScriptクライアントでDSTを補正する必要があります。

関連する問題