{
"code" : 400,
"errors" : [ {
"domain" : "global",
"message" : "Mail service not enabled",
"reason" : "failedPrecondition"
} ],
"message" : "Mail service not enabled"
}
Ive'sınav Her gmail api çağrısı hataya neden olur, ancak executeAndLog Gmail.Users.Messages.List nesnesinde .Execute çağırır
public static List<String> getThreadIdsFromRFC822MessageIds(Collection<String> messageIds, User u) throws IOException, NoOauthCredentialsException {
List<String> queryTerms = new ArrayList<>();
for (String messageId: messageIds) {
queryTerms.add("rfc822msgid:" + messageId);
}
String queryString = Joiner.on(" OR ").join(queryTerms);
String fieldSelectionString = "messages/threadId";
ListMessagesResponse messages = executeMessageQuery(u, queryString, fieldSelectionString);
List<String> threadIds = new ArrayList<>();
if (messages.getMessages() != null) {
for (Message m : messages.getMessages()) {
threadIds.add(m.getThreadId());
}
}
return threadIds;
}
private static ListMessagesResponse executeMessageQuery(User u, String queryString, String fieldSelectionString) throws IOException, NoOauthCredentialsException {
assert fieldSelectionString.length() > 0;
Gmail g = GmailAPIHelper.getGmailService(u);
Gmail.Users.Messages.List query = g.users().messages().list("me").setQ(queryString).setFields(fieldSelectionString);
ListMessagesResponse messages = executeAndLog(query, u);
return messages;
}
: kod ardından normal bir örneğini göstermektedir.
Bu hata, yalnızca çok az sayıda kullanıcımı etkiliyor ve hata iletisi, bunun izinlerle ilgili bir sorun olduğunu gösteriyor. Kullanıcılarıma yeniden yetki vermelerini istemek, sorunu çözecek olmasını beklemekteyim, ancak bir izin problemi olduğunda daha fazla olağan 401 yerine bu hata mesajını alıyorum. Bu hatayı gören oldu mu?
adresinden kontrol edin. Https://console.developers.google.com adresine gidin ve gmail API'sini etkinleştirin. – Nabin
Bu oldukça yeni; Dizin API'sındaki hesap için isMailboxSetup bayrağına karşılık gelmelidir: https://developers.google.com/admin-sdk/directory/v1/reference/users#isMailboxSetup. Bu yanlışsa, hesap için Gmail API'si kullanılamaz. –