1

次のコードは、連絡先を取得しようとするとエラー (403 Forbidden) を返します。

Contact contact = cr.Retrieve<Contact>(contactURI);

このコードは、Google の Profiles API ページに基づいています。https://developers.google.com/google-apps/profiles/ . フィードバックをいただければ幸いです。

RequestSettings settings = new RequestSettings("Add Profile Photo", "consumerKey", "consumerSecret", username, domain);
ContactsRequest cr = new ContactsRequest(settings);

Uri contactURI = new Uri("http://www.google.com/m8/feeds/profiles/domain/" + domain + "/full/" + username);

Contact contact = cr.Retrieve<Contact>(contactURI);

Stream outStream = File.OpenRead("C:\\temp\\profilePic.jpg");

try
{
    cr.SetPhoto(contact, outStream);
}
catch (GDataVersionConflictException e)
{
    throw new Exception("Exception setting photo: " + e.Message);
}
4

1 に答える 1

0

RequestSettings コンストラクターの「consumerKey」と「consumerSecret」を、アプリケーションの OAuth コンシューマー キーとシークレットに置き換える必要があります。

Documents List API のドキュメントには、認証に関する多くの詳細 (および C# コード) が含まれており、代わりに Contacts API を使用するように適応するのは非常に簡単です。

また、OAuth 2.0 (推奨) を使用する場合は、ライブラリに含まれている完全なサンプルを確認してください: http://code.google.com/p/google-gdata/source/browse/trunk/clients/cs/samples/ oauth2_sample/oauth2demo.cs

于 2012-05-24T20:11:11.953 に答える