を使用しながら、正確に、私はEWS URLを更新する必要があるとき、私は以下のようにEWSのURLを取得しています:管理API
今var response = myAutodiscoverService.GetUserSettings(
"[email protected]",
UserSettingName.ExternalEwsUrl,
UserSettingName.InternalEwsUrl,
UserSettingName.EwsSupportedSchemas);
string settingValue;
if (response.TryGetSettingValue(UserSettingName.ExternalEwsUrl, out settingValue)
|| response.TryGetSettingValue(UserSettingName.InternalEwsUrl, out settingValue))
{
// If ExternalEwsUrl is not returned in the response,
// we consider InternalEwsUrl for auto-discover
string ewsurl = settingValue;
}
自動検出であるため、私は推奨されているように、私はこの要求を取得し、このewsurlをキャッシュしています本当に遅い。このewsurlが期限切れになると(ユーザーのメールボックスが別のエンドポイントに移動されたとします)新しい更新されたews URLを取得するための障害メカニズムを実装するためには、どのようなエラーが予想されますか?
編集:私は、ExchangeService.SubscribeToPushNotifications
を使用して、EWSの新しいメールイベントを購読していますので、別の質問があります。ユーザーが通知を購読した後にews URLが変更された場合、私のアプリケーションのコールバックURLの新しいメールイベント?
はい、MSは24時間ごとにEWS URLをリフレッシュすることを推奨していますが、私は非常に長い時間のうちにそれが変更されたことを確認していません。だから、期限切れのEWS URLでサブスクリプションをリクエストしているときに特定のエラーが発生した場合は、そのエラーが発生した場合に自動検出を行い、それ以外の場合はキャッシュされたEWS URLをそのまま使用します。 – tavier
これはおそらくうまくいくでしょう。 – pjneary
ええ、問題はありません。期限切れのEWS URLの場合に、どのようなエラーが発生するのかわかりません。 – tavier