Как использовать Gmail API без необработанного атрибута в JSON - PullRequest
0 голосов
/ 03 октября 2018

Я пытаюсь отправить письмо по электронной почте через Google Gmail API.Я использовал тело запроса JSON с токеном на предъявителя и Content-Type - message / rfc822.

Тогда я использовал ссылку ниже для отправки пост-запроса, но я получил следующие ошибки. Как решить эту проблему ???

Ссылка пост-запроса -
https://www.googleapis.com/upload/gmail/v1/users/kasunysoft@gmail.com/messages/send

Тело запроса

  {
               "threadId": "Hi kasunjith",
               "payload": {
                "mimeType": "message/rfc822",
                "headers": [
                  {
                    "name": "To",
                    "value": "hvn@gmail.com"
                  },
                  {
                    "name": "From",
                    "value":"kasunysoft@gmail.com"
                  },
                  {
                    "name":"Subject",
                    "value":"Subject Text"
                  }
                ]
              }
            }

Я получил ответ

{
    "error": {
        "errors": [
            {
                "domain": "global",
                "reason": "invalidArgument",
                "message": "Recipient address required"
            }
        ],
        "code": 400,
        "message": "Recipient address required"
    }
}

1 Ответ

0 голосов
/ 04 октября 2018

Это означает, что ваш формат при отправке электронной почты неверенПроверьте документацию для Users.messages и Users.messages: отправьте для правильного формата.

{
  "id": string,
  "threadId": string,
  "labelIds": [
    string
  ],
  "snippet": string,
  "historyId": unsigned long,
  "internalDate": long,
  "payload": {
    "partId": string,
    "mimeType": string,
    "filename": string,
    "headers": [
      {
        "name": string,
        "value": string
      }
    ],
    "body": users.messages.attachments Resource,
    "parts": [
      (MessagePart)
    ]
  },
  "sizeEstimate": integer,
  "raw": bytes
}

Вы также можете проверитьследующий пост SO для более глубокого обсуждения вашей ошибки.

...