cURL과 PHP에서 Google Gmail API를 사용하여 이메일을 보내는 방법은 무엇입니까?

Adrien

Php 및 cURL에서 Google Api를 사용하여 메일을 보내는 데 문제가 있습니다.

나는 이것을 시도했다 :

// ENVOIE EMAIL

$message="To: [email protected]\r\nFrom: [email protected]\r\nSubject: GMail test.\r\n My message";
$email=base64_encode($message);

$url_email = 'https://www.googleapis.com/upload/gmail/v1/users/me/messages/send';

$curlPost = array(
    'raw' => $email,
);
$ch = curl_init();      
curl_setopt($ch, CURLOPT_URL, $url_email);      
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);      
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Bearer '. $AccessToken, 'Accept: application/json','Content-Type: application/json'));    
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($curlPost));
$data = curl_exec($ch);
// $data = json_decode(curl_exec($ch), true);;
curl_close($ch);
echo '<br/><h2>Send email</h2>';
print_r($data);

하지만 다음과 같은 오류 메시지가 나타납니다.

{ "error": { "errors": [{ "domain": "global", "reason": "badContent", "message": "미디어 유형 'application / json'은 지원되지 않습니다. 유효한 미디어 유형 : [message / rfc822] "}],"code ": 400,"message ":"미디어 유형 'application / json'은 지원되지 않습니다. 유효한 미디어 유형 : [message / rfc822] "}}

그리고 내가 시도했을 때 :

'Content-Type: message/rfc822';

새로운 오류 메시지가 있습니다.

{ "error": { "errors": [{ "domain": "global", "reason": "invalidArgument", "message": "Recipient address required"}], "code": 400, "message": "수신자 주소 필요"}}

Google에서 제공하는 라이브러리를 사용하고 싶지 않습니다.

패트릭 앨 러트

당신 같은 외모는 존중해야 동안 JSON 데이터를 인코딩 보내는 message/rfc822형식을 .

메시지를 base64 인코딩 + json 인코딩하면 안됩니다.

<?php
$message = "To: [email protected]\r\nFrom: [email protected]\r\nSubject: GMail test.\r\n My message";


$ch = curl_init('https://www.googleapis.com/upload/gmail/v1/users/me/messages/send'); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Authorization: Bearer $AccessToken", 'Accept: application/json', 'Content-Type: message/rfc822'));    
curl_setopt($ch, CURLOPT_POSTFIELDS, $message);
$data = curl_exec($ch);

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Delphi XE5에서 Gmail 앱을 사용하여 이메일을 보내는 방법은 무엇입니까?

분류에서Dev

Jmeter를 사용하여 Gmail에서 최신 이메일을 읽는 방법은 무엇입니까?

분류에서Dev

Google 스프레드 시트에서 Google Scripts를 사용하여 정의 된 날짜 3 일 전에 이메일을 보내는 방법은 무엇입니까?

분류에서Dev

Google 클라우드 엔드 포인트에서 SendGrid를 사용하여 이메일을 보내는 방법은 무엇입니까?

분류에서Dev

WePay API에서 PHP CURL을 사용하여 JSON 데이터를 전달하는 방법은 무엇입니까?

분류에서Dev

Android를 사용하여 서버에서 이메일을 보내는 방법은 무엇입니까?

분류에서Dev

Classic ASP에서 Exchange 서버를 사용하여 이메일을 보내는 방법은 무엇입니까?

분류에서Dev

인텔 xdk를 사용하여 iphone / android에서 이메일을 보내는 방법은 무엇입니까?

분류에서Dev

OPENSSL을 사용하여 이메일 메시지에 서명하고 CURL을 사용하여 보내는 방법은 무엇입니까?

분류에서Dev

cURL을 사용하여 PHP에서 Base crm REST API를 호출하는 방법은 무엇입니까?

분류에서Dev

PHP를 사용하여 이메일을 보내는 방법은 무엇입니까?

분류에서Dev

curl을 사용하여 외부 API에 GET 요청을 보내는 방법은 무엇입니까?

분류에서Dev

Google App Engine에서 URL Fetch PHP API를 사용하여 final_url을 얻는 방법은 무엇입니까?

분류에서Dev

Gmail을 사용하여 메일을 보내는 동안 이러한 예외를 제거하는 방법은 무엇입니까? 나는 스택 오버플로에서 얻은 모든 것을 시도했습니다.

분류에서Dev

Nodemailer와 Gmail을 사용하여 이메일을 보내는 방법은 무엇입니까?

분류에서Dev

Node.JS에서 Gmail API를 사용하여 첨부 파일이있는 초안 메시지를 만드는 방법은 무엇입니까?

분류에서Dev

Javascript에서 Gmail Api를 통해 메일을 보내기위한 인증을 설정하는 방법은 무엇입니까?

분류에서Dev

Ajax를 사용하여 JSON으로 다중 데이터를 보내는 방법과 PHP에서 수신하는 방법은 무엇입니까?

분류에서Dev

ajax를 사용하여 다른 페이지에서 사용할 수있는 GET 값과 PHP를 보내는 방법은 무엇입니까?

분류에서Dev

Gmail의 반응 형 이메일에서 @media (prefers-color-scheme)를 사용하는 방법은 무엇입니까?

분류에서Dev

Laravel API를 사용하여 AngularJS 양식 내에서 csrf_token ()을 보내는 방법은 무엇입니까?

분류에서Dev

phpMailer를 사용하여 PHP에서 이메일을 보내려고 할 때 SMTP 연결 오류를 해결하는 방법은 무엇입니까? POP / IMAP

분류에서Dev

curl을 사용하여 API에서 데이터를 가져 오는 방법은 무엇입니까?

분류에서Dev

PHP를 사용하여 TelegramBot에서 임의의 사진을 보내는 방법은 무엇입니까?

분류에서Dev

Gmail API를 사용하여 프로젝트에서 Gmail Smart-Compose 기능을 구현하는 방법은 무엇입니까?

분류에서Dev

localhost WAMP 서버에서 이메일을 보내 Gmail Hotmail 등을 보내는 방법은 무엇입니까?

분류에서Dev

서버 측 언어를 사용하여 메일을 보내는 방법은 무엇입니까?

분류에서Dev

보낸 사람과받는 사람이 이메일에 올바르게 표시되도록 mailx를 사용하여 이메일을 보내는 방법은 무엇입니까?

분류에서Dev

Angular를 사용하여 asp.net 웹 API에 파일을 보내는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    Delphi XE5에서 Gmail 앱을 사용하여 이메일을 보내는 방법은 무엇입니까?

  2. 2

    Jmeter를 사용하여 Gmail에서 최신 이메일을 읽는 방법은 무엇입니까?

  3. 3

    Google 스프레드 시트에서 Google Scripts를 사용하여 정의 된 날짜 3 일 전에 이메일을 보내는 방법은 무엇입니까?

  4. 4

    Google 클라우드 엔드 포인트에서 SendGrid를 사용하여 이메일을 보내는 방법은 무엇입니까?

  5. 5

    WePay API에서 PHP CURL을 사용하여 JSON 데이터를 전달하는 방법은 무엇입니까?

  6. 6

    Android를 사용하여 서버에서 이메일을 보내는 방법은 무엇입니까?

  7. 7

    Classic ASP에서 Exchange 서버를 사용하여 이메일을 보내는 방법은 무엇입니까?

  8. 8

    인텔 xdk를 사용하여 iphone / android에서 이메일을 보내는 방법은 무엇입니까?

  9. 9

    OPENSSL을 사용하여 이메일 메시지에 서명하고 CURL을 사용하여 보내는 방법은 무엇입니까?

  10. 10

    cURL을 사용하여 PHP에서 Base crm REST API를 호출하는 방법은 무엇입니까?

  11. 11

    PHP를 사용하여 이메일을 보내는 방법은 무엇입니까?

  12. 12

    curl을 사용하여 외부 API에 GET 요청을 보내는 방법은 무엇입니까?

  13. 13

    Google App Engine에서 URL Fetch PHP API를 사용하여 final_url을 얻는 방법은 무엇입니까?

  14. 14

    Gmail을 사용하여 메일을 보내는 동안 이러한 예외를 제거하는 방법은 무엇입니까? 나는 스택 오버플로에서 얻은 모든 것을 시도했습니다.

  15. 15

    Nodemailer와 Gmail을 사용하여 이메일을 보내는 방법은 무엇입니까?

  16. 16

    Node.JS에서 Gmail API를 사용하여 첨부 파일이있는 초안 메시지를 만드는 방법은 무엇입니까?

  17. 17

    Javascript에서 Gmail Api를 통해 메일을 보내기위한 인증을 설정하는 방법은 무엇입니까?

  18. 18

    Ajax를 사용하여 JSON으로 다중 데이터를 보내는 방법과 PHP에서 수신하는 방법은 무엇입니까?

  19. 19

    ajax를 사용하여 다른 페이지에서 사용할 수있는 GET 값과 PHP를 보내는 방법은 무엇입니까?

  20. 20

    Gmail의 반응 형 이메일에서 @media (prefers-color-scheme)를 사용하는 방법은 무엇입니까?

  21. 21

    Laravel API를 사용하여 AngularJS 양식 내에서 csrf_token ()을 보내는 방법은 무엇입니까?

  22. 22

    phpMailer를 사용하여 PHP에서 이메일을 보내려고 할 때 SMTP 연결 오류를 해결하는 방법은 무엇입니까? POP / IMAP

  23. 23

    curl을 사용하여 API에서 데이터를 가져 오는 방법은 무엇입니까?

  24. 24

    PHP를 사용하여 TelegramBot에서 임의의 사진을 보내는 방법은 무엇입니까?

  25. 25

    Gmail API를 사용하여 프로젝트에서 Gmail Smart-Compose 기능을 구현하는 방법은 무엇입니까?

  26. 26

    localhost WAMP 서버에서 이메일을 보내 Gmail Hotmail 등을 보내는 방법은 무엇입니까?

  27. 27

    서버 측 언어를 사용하여 메일을 보내는 방법은 무엇입니까?

  28. 28

    보낸 사람과받는 사람이 이메일에 올바르게 표시되도록 mailx를 사용하여 이메일을 보내는 방법은 무엇입니까?

  29. 29

    Angular를 사용하여 asp.net 웹 API에 파일을 보내는 방법은 무엇입니까?

뜨겁다태그

보관