Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript通过google api发送邮件失败_Javascript_Email_Google Api_Google Api Client - Fatal编程技术网

使用javascript通过google api发送邮件失败

使用javascript通过google api发送邮件失败,javascript,email,google-api,google-api-client,Javascript,Email,Google Api,Google Api Client,我正试图用JavaScript通过谷歌API发送电子邮件 我的问题是,当我尝试发送一封没有附件的简单邮件时,会出现以下错误: 需要“原始”RFC822有效负载消息字符串或通过/upload/*URL上传消息` 我的代码 function sendMessage() { gapi.client.load('gmail', 'v1', function() { // Web-safe base64 var to = 'someone@someone.nl', sub

我正试图用JavaScript通过谷歌API发送电子邮件

我的问题是,当我尝试发送一封没有附件的简单邮件时,会出现以下错误:

需要“原始”RFC822有效负载消息字符串或通过/upload/*URL上传消息`

我的代码

function sendMessage() {
gapi.client.load('gmail', 'v1', function() {
    // Web-safe base64 
    var to = 'someone@someone.nl',
        subject = 'Hello World',
        content = 'send a Gmail.'

    var base64EncodedEmail = btoa(
          "Content-Type:  text/plain; charset=\"UTF-8\"\n" +
          "Content-length: 5000\n" +
          "Content-Transfer-Encoding: message/rfc2822\n" +
          "to: someone@someone.nl\n" +
          "from: \"test\" <test@gmail.com>\n" +
          "subject: Hello world\n\n" +

          "The actual message text goes here"
            ).replace(/\+/g, '-').replace(/\//g, '_');

    var mail= base64EncodedEmail;
    console.log(mail);
    var request = gapi.client.gmail.users.messages.send({
      'userId': "me",
      'message': {
          'raw': mail
        }
    });
    request.execute(function(response){
     console.log(response);
   });
  });        

}
函数sendMessage(){
load('gmail','v1',function(){
//网络安全base64
var至someone@someone.nl',
主题=‘你好,世界’,
内容='发送一个Gmail'
var BASE64ENCODEMAIL=btoa(
“内容类型:文本/纯文本;字符集=\“UTF-8\”\n”+
“内容长度:5000\n”+
“内容传输编码:消息/rfc2822\n”+
“至:someone@someone.nl\n“+
“发件人:\”测试\“\n”+
“主题:Hello world\n\n”+
“实际的消息文本显示在此处”
).replace(//\+/g,'-')。replace(//\//g,'-');
var mail=base64encodemail;
控制台日志(邮件);
var request=gapi.client.gmail.users.messages.send({
“用户ID”:“我”,
“消息”:{
“原始”:邮件
}
});
请求.执行(函数(响应){
控制台日志(响应);
});
});        
}

几天后,我自己找到了答案。问题是,正文中的“消息”只能在您在电子邮件中发送附件时使用

如果您没有附件,查询看起来就像我在这里写的

var mail= base64EncodedEmail;
console.log(mail);
var request = gapi.client.gmail.users.messages.send({
  'userId': "me",
  'resource': {
      'raw': mail
    }
});
request.execute(function(response){
 console.log(response);
});

几天后,我自己找到了答案。问题是,正文中的“消息”只能在您在电子邮件中发送附件时使用

如果您没有附件,查询看起来就像我在这里写的

var mail= base64EncodedEmail;
console.log(mail);
var request = gapi.client.gmail.users.messages.send({
  'userId': "me",
  'resource': {
      'raw': mail
    }
});
request.execute(function(response){
 console.log(response);
});

谢谢我发现
drafts.create
message.send
使用的语法不一致……是否有python版本?python 3.8:raw=base64.urlsafe\u b64encode(message.as\u bytes()).decode()gmail\u api.users().messages().send(userId=“me”,body={'raw':raw})。execute()谢谢!我发现
drafts.create
message.send
使用的语法不一致……是否有python版本?python 3.8:raw=base64.urlsafe\u b64encode(message.as\u bytes()).decode()gmail\u api.users().messages().send(userId=“me”,body={'raw':raw}.execute()相关:你能解释一下为什么用
-
替换(//\+/g,'-')。用
-
替换(//\//g,''-')替换(//\//g,'-')••用
-
替换
+
?另外,为了简化使用
(单引号)以避免转义
。相关:你能解释一下为什么
替换(//\+/g,'-')。替换(//\//g,'''.'''.'''.''.-••将
+
替换为
-
,并简化使用
(单引号)以避免转义
。”