I am using the post method below for google account using curl, but it gives me invalid_request error.
POST /o/oauth2/token HTTP/1.1 Host: accounts.google.com Content-Type: application/x-www-form-urlencoded code=4/ux5gNj-_mIu4DOD_gNZdjX9EtOFf& client_id=1084945748469-eg34imk572gdhu83gj5p0an9fut6urp5.apps.googleusercontent.com& client_secret=CENSORED& redirect_uri=http://localhost/oauth2callback& grant_type=authorization_code
Here is my php code with curl
$text ='test'; $URL = "https://accounts.google.com/o/oauth2/token"; $header = array( "POST /o/oauth2/token HTTP/1.1", "Host: accounts.google.com", "Content-type: application/atom+xml;charset=\"utf-8\"", "Accept: text/xml", "Cache-Control: no-cache", "code=[my_code]&client_id=[my_client_id]&client_secret=[my_client_secret]& redirect_uri=http://localhost/curl_resp.php&grant_type=authorization_code", "Content-length: ".strlen($text), ); $xml_do = curl_init(); curl_setopt($xml_do, CURLOPT_URL, $URL); curl_setopt($xml_do, CURLOPT_CONNECTTIMEOUT, 10); curl_setopt($xml_do, CURLOPT_TIMEOUT, 10); curl_setopt($xml_do, CURLOPT_RETURNTRANSFER, true); curl_setopt($xml_do, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($xml_do, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($xml_do, CURLOPT_POST, false); curl_setopt($xml_do, CURLOPT_POSTFIELDS, $text); curl_setopt($xml_do, CURLOPT_HTTPHEADER, $header);
And I have an invalid request error
source share