Google Contact API错误

时间:2012-11-25 13:37:50

标签: google-contacts

我正在使用Google Contact API通过java访问我的联系人。我正在使用我的Gmail帐户。我的帐户有双向密码验证。所以我写了一个示例程序来显示标题。但我得到的错误就像

  

线程中的异常" main"   com.google.gdata.client.GoogleService $ InvalidCredentialsException:   凭据无效   com.google.gdata.client.GoogleAuthTokenFactory.getAuthException(GoogleAuthTokenFactory.java:600)     在   com.google.gdata.client.GoogleAuthTokenFactory.getAuthToken(GoogleAuthTokenFactory.java:500)     在   com.google.gdata.client.GoogleAuthTokenFactory.setUserCredentials(GoogleAuthTokenFactory.java:346)     在   com.google.gdata.client.GoogleService.setUserCredentials(GoogleService.java:362)     在   com.google.gdata.client.GoogleService.setUserCredentials(GoogleService.java:317)     在   com.google.gdata.client.GoogleService.setUserCredentials(GoogleService.java:301)     在com.contact.manager.Create.createContact(Create.java:15)at   com.contact.manager.Create.main(Create.java:26)

我的代码:

public class Create {

    public void createContact() throws IOException, ServiceException {
        ContactsService contactsService = new ContactsService(
                "mine-MyProduct-3");
        contactsService.setUserCredentials(username,
                password);
        URL feedUrl = new URL(
                "https://www.google.com/m8/feeds/contacts/{EmailID}/full");
        ContactFeed resultedFeed = contactsService.getFeed(feedUrl,
                ContactFeed.class);
        System.out.println(resultedFeed.getTitle().getPlainText());
    }

    public static void main(String[] args) throws IOException, ServiceException {
        Create create = new Create();
        create.createContact();
    }
}
  1. 我当时正在为我的帐户使用两步验证我收到这样的错误。
  2. 使用普通帐户(我的意思是一步验证)时,我没有收到任何错误。
  3. 在进行两步验证时是否有任何特殊方法可以进行身份​​验证。 你能帮忙吗?我卡在这里。

2 个答案:

答案 0 :(得分:1)

正如Google在两步文档中明确指出的那样,您无法使用常规密码进行API访问。

相反,您应该使用OAuth 2.
或者,您可以创建特定于应用程序的密码。

答案 1 :(得分:1)

试试吧!我希望它会有所帮助。当API请求失败时,HTTP将返回4xx或5xx响应代码(通常用于识别故障)以及XML响应,该响应提供有关导致故障的错误的更具体信息。