标签: gmail-api

新的 Gmail API 对 XOAUTH2 意味着什么?

我最近看到新的Gmail API宣布吹嘘 OAuth 2.0 用户身份验证。

我有点担心,因为在我们的企业 Google Apps 域中,我已经使用XOAUTH2与 Gmail 集成。(本质上 XOAUTH2 包括对 IMAP 身份验证的 OAuth 2.0 支持)。

我应该担心吗?

新的 Gmail API 是否意味着 XOAUTH2 的终结?

gmail gmail-imap google-oauth gmail-api

1
推荐指数
1
解决办法
2370
查看次数

访问 gmail api 时从同意屏幕中的 url 获取 authuser

我创建了一个应用程序,在其中我从应用程序的 gmail 收件箱中获取所有邮件。现在我想要的是,当用户单击我的应用程序中的任何电子邮件时,用户应该被重定向到实际的 gmail 和用户单击的应在 gmail 中打开的电子邮件。因此,我通过在应用程序中的 href 标记中提供 mail.google.com/mail/u/0/#inbox/ 链接来实现该功能。

现在我面临的问题是,假设用户在浏览器中打开了多个 Gmail 帐户。由于我提供了硬编码器网址“ https://mail.google.com/mail/u/0/#inbox/ ”,它总是以“0”authuser id 打开邮件。那么有什么方法可以在我的应用程序中动态获取这个值。我检查了 gmail 是如何做的,假设当我打开第一个 gmail 帐户时,该 url 将是 mail.google.com/mail/u/0/#inbox。如果我打开另一个帐户,则网址将为 mail.google.com/mail/u/1/#inbox。原来是 0,现在是 1。

因此,我检查过,当我们访问任何 gmail api 时,谷歌会提供同意屏幕,如果打开了多个帐户,谷歌将向您提供可以选择帐户的屏幕。选择帐户后,将出现同意屏幕。所以网址将类似于“ https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/gmail.readonly&response_type=code&redirect_uri=http://localhost:8080/ web/guest/GmailDashboard&access_type=online&approval_prompt=auto&client_id=19502573792-0fvebvrb4jg1usmn2r0hfka31la8gtfs.apps.googleusercontent.com&hl=en&from_login=1&as=4ded27cb6d28ee3b&pli=1&authuser=0 ”。我想要我的应用程序中的最后一个参数 authuser 。

任何帮助将不胜感激。

感谢和问候,阿卜杜勒巴斯特·F·谢赫。

email api google-schemas gmail-api

1
推荐指数
1
解决办法
2663
查看次数

Google登录服务器身份验证代码是否没有iOS?

我们已经在应用程序中使用Google登录了。我们在请求登录时提供了serverClientID。

我们将user.serverAuthCode设置为nil。

我们的要求如下:

func googleLogin(){
            var configureError: NSError?
            GGLContext.sharedInstance().configureWithError(&configureError)
            assert(configureError == nil, "Error configuring Google services: \(configureError)")

            let gid = GIDSignIn.sharedInstance()
            if let path = Bundle.main.path(forResource: "GoogleService-Info", ofType: "plist") {
                let myDict = NSDictionary(contentsOfFile: path)
                gid?.serverClientID = "our servers cliet id as configured over firebase"

// This client id of our ios app we are getting from
// GoogleService-info.plist 
                gid?.clientID = myDict!.value(forKey: "CLIENT_ID") as! String

            }
            //        gid?.serverClientID = "our_servers" // TODO: fetch from plist
            gid?.scopes.append("https://www.googleapis.com/auth/gmail.readonly")
            print("\nClient Id: \(gid!.clientID!) Server …
Run Code Online (Sandbox Code Playgroud)

google-api ios google-oauth swift gmail-api

1
推荐指数
2
解决办法
2032
查看次数

使用python 3使用gmail api tuto时出错,“ errors.HttpError除外,错误:”

第一行出现错误:

except errors.HttpError, error:
   print (f'An error occurred: {error}')
   return None
Run Code Online (Sandbox Code Playgroud)

(第2行已针对python 3更新。只有要打印的括号是必需的)

python python-3.x gmail-api

1
推荐指数
1
解决办法
1820
查看次数

Gmail API - 值“= 获取标签 google-api-dotnet-client/1.25.0.0 (gzip)”的格式无效

我开始探索 Gmail API。我按照教程显示标签列表(https://developers.google.com/gmail/api/quickstart/dotnet),并且工作正常。

高度赞赏帮助

当我修改程序流程时,它给了我错误。我无法追踪错误。它给了我方法错误Execute()

错误:值“= Get Labels google-api-dotnet-client/1.25.0.0 (gzip)”的格式无效

这是我的代码。

public static class Labels
{
    public static void ListLabels ( )
    {
        try
        {
            var scope = new [] { GmailService.Scope.GmailReadonly };
            var service = Authorization.GetGmailService(scope, "AppName = Get Labels");

            if (service != null)
            {
                var requestListLabels = service.Users.Labels.List("me");

                var labelsList = requestListLabels.Execute().Labels;

                Console .WriteLine ( "\n\n---- Labels List ----" );
                if ( labelsList != null && labelsList .Count > 0 )
                {
                    foreach ( …
Run Code Online (Sandbox Code Playgroud)

.net c# google-api-dotnet-client gmail-api

1
推荐指数
1
解决办法
489
查看次数

授权的 JavaScript 来源不工作本地主机

创建客户端 ID 时,授权的 JavaScript 源不起作用。我正在尝试从我的 html 页面中集成 google 登录 .. 我的本地主机路径是http://localhost/charts/ .. 同时将http://localhost/charts/ 添加到 Authorized JavaScript origins files 文本框显示如下错误:Origin URI 不能包含路径或以“/”结尾:http://localhost/charts/ .. 如果有人可以帮助我...这里我发送错误截图

oauth gmail-api

1
推荐指数
1
解决办法
4575
查看次数

使用 PHP 将密件抄送添加到使用 Gmail API 发送的电子邮件中

所以,我遵循了本指南的所有内容,是的,我能够发送电子邮件,但我正在尝试添加密件抄送电子邮件,因为它的列表很长,我不希望它们显示在电子邮件的收件人列表中。

使用 PHPMailer 发送时一切正常,这个问题似乎可以解决我的问题,但尽管我已经尝试过,但我还没有找到答案。

我现在是怎么做的:

$client = getClient();
if (is_string($client)){
    exit ($client);
}
$service = new Google_Service_Gmail($client);
$user = 'me';

$strSubject = 'Correo GMail API' . date('M d, Y h:i:s A');
$strRawMessage = "From: Lauro Campos<jlcampost@concredito.com.mx>\r\n";
$strRawMessage .= "To: Metro Gio <greyeso@concredito.com.mx>\r\n";
$strRawMessage .= "Bcc: <cjlindorv@concredito.com.mx>,<cfgonzalezr@concredito.com.mx>,<jlcampost@concredito.com.mx>\r\n";
$strRawMessage .= 'Subject: =?utf-8?B?' . base64_encode($strSubject) . "?=\r\n";
$strRawMessage .= "MIME-Version: 1.0\r\n";
$strRawMessage .= "Content-Type: text/html; charset=utf-8\r\n";
$strRawMessage .= 'Content-Transfer-Encoding: quoted-printable' . "\r\n\r\n";
$strRawMessage .= "mensaje <b>de prueba!\r\n";
// The …
Run Code Online (Sandbox Code Playgroud)

php email bcc gmail-api

1
推荐指数
1
解决办法
1148
查看次数

使用 Apps 脚本将 Gmail 附件复制到 Google Drive

我正在使用 Google Apps Script 自动将电子邮件中的附件保存到唯一的 Google Drive 文件夹,具体取决于邮件已过滤到的标签。

到目前为止,我已经设法使用我在网上找到的一些代码片段来获取消息 ID。但是,我一直在尝试访问邮件正文并将附件保存到驱动器文件夹中。

function getMessage(){
     var folder = DriveApp.getFolderById('xxxxxxxxxxxxx');
     var userId = "myemail@gmail.com";
     var query = "label:Global Alcohol";
     var res = Gmail.Users.Messages.list(userId, {q: query});
     var attachment = msgs.Attachments.get(userId, messageId, id);
     var ids = res.messages.map(function(e){return e.id});
     Logger.log(ids);// Message IDs with the specific labels.
     }
Run Code Online (Sandbox Code Playgroud)

在此先感谢您的帮助。

gmail google-apps-script gmail-api

1
推荐指数
1
解决办法
1816
查看次数

如何使用 GMAIL API 从 Google Apps 脚本发送电子邮件?

我正在尝试使用 Google Apps 脚本中的 Gmail API 自动从我的帐户发送电子邮件。

这是我的代码:

function email_checker() {
  var yourEmailAddress = "###@gmail.com";
  var myEmailAddress = "support@###.com";
  var subject = "testing mail";
  var forScope = GmailApp.getInboxUnreadCount();
  var htmlBody = '<html><body>' + '<h1>HI</h1>' + '</body></html>';

  var message = 'From: Me <' + myEmailAddress + '>\r\n' +
    'To: Me <' + myEmailAddress + '>\r\n' +
    'Subject: ' + subject + '\r\n' +
    'Content-Type: text/html; charset=utf-8\r\n' +
    'Content-Transfer-Encoding: quoted-printable\r\n\r\n' +
    htmlBody;

  var draftBody = Utilities.base64Encode(message);
  draftBody = draftBody.replace(/\//g, '_').replace(/\+/g, '-');

  var …
Run Code Online (Sandbox Code Playgroud)

google-apps-script gmail-api

1
推荐指数
1
解决办法
1920
查看次数

如何使用gmail api在python中打印gmail的正文?

大家好,我正在尝试使用 Gmail API 打印发件人发送的特定电子邮件。我设法做了一些研究并观看了一些有关如何打印发件人和主题的视频,但由于某种原因,我无法打印邮件正文。我查看了 Gmail API,但没有找到任何可以帮助以文本形式打印正文的内容。

有关打印电子邮件正文的任何​​帮助,请...

service = build('gmail', 'v1', credentials=creds)
results = service.users().messages().list(userId='me', labelIds=['INBOX'], q="from:specific email, is:unread").execute()

messages = results.get('messages', [])

if not messages:
  print("You have no New Messages.")

else:
   message_count = 0
   for message in messages: 
       msg = service.users().messages().get(userId='me', id=message['id']).execute()
       message_count= message_count + 1
       email_data= msg['payload']['headers']
       for values in email_data:
           name = values["name"]
           if name == "From":
               from_name = values ["value"]
               print(from_name)
               subject= [j['value'] for j in email_data if j["name"]=="Subject"]
               print(subject)
Run Code Online (Sandbox Code Playgroud)

正如我所说,这段代码会提取特定的电子邮件并打印发件人,而我所缺少的主题是正文。

我尝试按照此 stackoverflow 中发布的内容进行操作: How to检索整个邮件正文使用 …

python gmail python-3.x gmail-api

1
推荐指数
1
解决办法
2193
查看次数