Пробую получить success token для авторизации, не выходит.
1. Пробую так:
$token = json_decode(file_get_contents(API_OAUTH_TOKEN_URL . '?client_id=' . CLIENT_ID . '&redirect_uri=' . REDIRECT_URI . '&client_secret=' . CLIENT_SECRET . '&code=' . $_GET['code']),true);
Результат:
Warning: file_get_contents(
https://graph.facebook.com/oauth/access_token?...
failed to open stream: HTTP request failed! HTTP/1.1 400 Bad Request in login.php on line 14
2. Делаю так:
$api_host = API_OAUTH_TOKEN_URL;
$access_token_parameters = array(
'client_id' => CLIENT_ID,
'client_secret' => CLIENT_SECRET,
'redirect_uri' => REDIRECT_URI,
'code' => $_GET['code']
);
$jResult = $ins->getAccessTokenUrl($api_host, $access_token_parameters);
public function getAccessTokenUrl($api_host, $access_token_parameters){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $api_host);
curl_setopt($ch, CURLOPT_POST,true);
curl_setopt($ch, CURLOPT_POSTFIELDS,$access_token_parameters);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: application/json'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_TIMEOUT, 90);
$jsonData = json_decode(curl_exec($ch));
if (!$jsonData) {
exit('Не получилось получить токен.');
}
curl_close($ch);
return $jsonData;
}
Ничего не происходит.
Если переходить по адресу в ручном режиме, ответ:
{
"error": {
"message": "The request is invalid because the app is configured as a desktop app",
"type": "OAuthException",
"code": 1,
"fbtrace_id": "FhvSAYwHN1M"
}
}