1

現在、いくつかの Web サイト (google、yahoo、live/hotmail) からカレンダー データを取得するためのポータル プロジェクトに取り組んでいます。問題は、アプリケーションがこれらの Web サイトからカレンダー データを取得するサービスを必要とすることです。私のチームはすでに Google と Yahoo のカレンダーを削除していますが、現在はライブ カレンダーに問題があります。

これまでのところ、私たちがすでに試して失敗したことは次のとおりです。

  1. http://login.live.comは javascript を使用して完全に保護されているため、HTTP リクエストを使用してデータを取得することは不可能に思えます。ログインするための JS を理解するのに 3 日間を費やしましたが、Microsoft は私たちよりもはるかに優れているようです :)
  2. LIVE CONNECT API についてネットで検索しましたが、(ユーザー名/パスワードを提供することによって) MS Live に動的にログインする方法になりました。プロセスが 1 つのサービス レイヤーを実行したため、ライブ ログイン ボタンを使用できません。(または、おそらく私は何かを見逃していますか?)

このタスクを完了するチャンスはありますか?

ヘルプ、手がかり、トリックは非常に高く評価されます、ありがとう

注: 私たちのアプリケーション クライアントは小さなネットワーク内にあり、LIVE/YAHOO/GOOGLE アカウントを管理しているかどうかに同意します。

4

2 に答える 2

1

答えは NO! です。MS LIVE は OAUTH を使用しているため、電子メール/パスワードを入力して MS LIVE からカレンダー/イベントを取得することはできません。

最善の方法は、クライアント アプリケーションからライブ OAUTH ログインを表示し、そこから認証トークンを取得することです。次に、認証トークンをサーバー側に渡します。必要なカレンダーまたはイベントを取得します。

ここにステップがあります:

アプリケーションのクライアント ID を取得する

移動: https://manage.dev.live.com/Applications/Index

ログインフォームを作成する

クライアント側アプリケーションで、ブラウザ コントロールを表示してログイン フォームを作成します。URL は次のとおりです。

https://oauth.live.com/authorize?response_type=token&client_id=YOUR_APP_CLIENTID&scope=SCOPE&locale=en&redirect_uri=https://oauth.live.com/desktop&auth_redirect=true&wa=wsignin1.0

ユーザーが認証を許可すると、ブラウザは次の場所にリダイレクトされます。

https://oauth.live.com/desktop#access_token=ACCESS_TOKEN
   &token_type=TOKEN_TYPE&expire=EXPIRE

そこから ACCESS_TOKEN を抽出できます。

カレンダー/イベントをつかむ

これで、クライアント アプリには既に ACCESS_TOKEN があり、これをサービスに渡してカレンダーを取得します (ACCESS_TOKEN にはタイムアウトがあることに注意してください)。次に、サービスは次の REST 呼び出しを行う必要があります。

https://apis.live.net/v5.0/me/calendars?access_token=ACCESS_TOKEN

また

https://apis.live.net/v5.0/me/events?start_time=2012-10-01T00:00:00Z
     &end_time=2012-10-03T00:00:00Z&access_token=ACCESS_TOKEN

詳細については、http: //msdn.microsoft.com/en-us/library/live/hh826523.aspxを参照してください。

幸運を

于 2012-10-17T04:43:42.287 に答える
0

Microssoftサイトから...

アプリはLiveConnectAPIを使用して、Hotmailユーザーのカレンダーを作成、読み取り、更新、および削除できます。アプリは、休日のリストなどの公開カレンダーをサブスクライブすることもできます。

だから私はこれがあなたが見に行く場所だと思います..カレンダー(Live Connect API) ; はい、C#にもサンプルがあります。

概念の説明...基本的public class LiveConnectClientに、これを行うには、Windows8で利用可能なものを使用する必要があります。

using Microsoft.Live;  
using Microsoft.Live.Controls;

ライブ接続クライアントおよび関連する操作のコアロジックを含む名前空間です。

于 2012-10-03T05:42:03.727 に答える