我正在使用Google Contacts API从我的ASP.NET应用程序中获取gmail联系人。 在提供用户名和密码后,应用程序没有响应,连接超时。 以下是我尝试调试时的错误:
执行请求失败:http://www.google.com/m8/feeds/contacts/default/full
错误的快照
答案 0 :(得分:0)
请检查您的access_token
是否有效。获取联系人列表作为定义URL:
https://www.google.com/m8/feeds/contacts/default/full?alt=json&max-results=" + maxemails + "&oauth_token=access_token";
成功登录后,access_token
提供了 Gmail
。
答案 1 :(得分:0)
您确定您的密码和用户是否正确? 好吧,我会给你这个代码,它工作正常:
public DataSet GetGmailContacts(string p_name, string e_id, string psw)
{
//p_name = name of your app; e_id = your gmail account; psw = password of your gmail account
DataSet ds = new DataSet();
DataTable dt = new DataTable();
DataColumn dc1 = new DataColumn();
dc1.DataType = Type.GetType("System.String");
dc1.ColumnName = "emailid";
DataColumn dc2 = new DataColumn();
dc2.DataType = Type.GetType("System.String");
dc2.ColumnName = "name";
dt.Columns.Add(dc1);
dt.Columns.Add(dc2);
RequestSettings rs = new RequestSettings(p_name, e_id, psw);
rs.AutoPaging = true;
ContactsRequest cr = new ContactsRequest(rs);
Feed<Contact> f = cr.GetContacts();
int counter= 0;
foreach (Contact t in f.Entries)
{
Name nombreContacto = t.Name;
DataRow drx = dt.NewRow();
drx["emailid"] = t.PrimaryEmail.Address.ToString();
drx["name"] = t.Title.ToString();
dt.Rows.Add(drx);
counter++;
}
ds.Tables.Add(dt);
Response.Write("Total:" + counter.ToString());
return ds;
}
之后,您可以使用函数返回的dataSet填充Gridview。