2013-06-14 22 views
5

私はApple IDに関連したiCloud連絡先を受け取ろうとしていますが、何らかの理由でそれが動作しません。 (404)見つからないというエラーが表示されます。iCloud連絡先のインポート.NET(CardDAV)

iCloudはCardDAVを使用しており、連絡先にアクセスするには特定のURLアドレスが必要であることを知っています。私は次のように使用CardDAVのクライアントの場合

https://github.com/Metric/CardDavNetサーバーアドレスの 私は、複数のURL(MYUSERIDが私の本当のユーザーIDですofcourseの)を試してみました:

https://p02-caldav.icloud.com/MYUSERID/carddavhome/card/ https://p02-contacts.icloud.com/MYUSERID/carddavhome/card/

私が間違って何をしているのですか?正しいサーバーのURLを使用していますか、それとも何か間違っていますか?私は誰かが正しい方向に私を導くことができることを願っています。

+0

私はiCloudに新しいので、私は「MYUSERID」を得ることができません。それはAppie IDですか? – kairen

答えて

1

あなたが言及する2番目のURLはちょっとOKです。しかし、アドレス帳をホストするURLを確実に取得するには、アカウントのプリンシパルレコードのaddressbook-home-setプロパティを照会する必要があります。

同様:

PROPFIND Depth:0 /12345/principal/ 
<propfind xmlns="DAV:"> 
    <prop> 
    <addressbook-home-set xmlns="urn:ietf:params:xml:ns:carddav"/> 
    </prop> 
</propfind> 

と元本を見つけるために、あなたは、例えば '元本URL' プロパティを照会/上で、あなたの認証セットで:

PROPFIND Depth:0/
<propfind xmlns="DAV:"> 
    <prop><principal-URL/></prop> 
</propfind> 

また、あなたの.NETフレームワークは、実際にサーバーに送信しているかを把握するために、チャールズやフィドラーなどのデバッグプロキシを使用する場合があります。

+0

ご協力ありがとうございます!あなたが提供したサンプルコードはSOAP呼び出しですか? XMLはなぜ使われていますか? – Mittchel

+1

これはWebDAV呼び出しであり、WebDAVはすべてのメタデータ操作にXMLを使用します。グーグルリング私はOKの紹介であると思われるこれを見つけた:http://www.cs.unibo.it/~fabio/webdav/WebDAV.pdf – hnh

+0

恐ろしい!おかげで多く – Mittchel

関連する問題