cURL POST Запрос с авторизацией - PullRequest
0 голосов
/ 08 марта 2019

Я пытаюсь использовать cURL POST для получения некоторых данных от конечной точки:

Вот что сказано в документации для аутентификации и получения данных:

"... использует комбинациюиз OAuth2 grant_types и JWT токенов

Для авторизации используйте этот код:

curl -X POST \
  'http://api.example.com/v1/api/auth/login?grant_type=client_id' \
  -H 'Authorization: Basic cHVibGljX2tleTpwddl2YXRJX2xleQzd'

"

На основе приведенной выше информации я создал этот код для запроса:

$handle = curl_init('http://api.example.com/v1/api/auth/login? 
grant_type=client_id');
$header = array();
$header[] = 'Content-Type: application/json';
$header[] = 'Authorization: Basic DdJfd1Bxx2NxMkYwNjzzdl9mejJZIFKVQlBc';
curl_setopt($handle, CURLOPT_POST, true);
curl_setopt($handle, CURLOPT_POSTFIELDS, $header);
$resp = curl_exec($handle);

var_dump($resp);

Когда я выполняю код, он запускается в бесконечном цикле и в конечном итоге истекает.

Правильный ли формат кода или это проблема с предоставленным мною ключом авторизации?Ключ представляет собой представление Base64.

Спасибо!

ОБНОВЛЕНИЕ: Я также попробовал следующее:

$header[] = 'Content-Type: application/json';
$header[] = 'Authorization: Basic adfsidfosfosfodsofs';
$content = "grant_type=client_id";

$curl = curl_init();

curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_POSTFIELDS, $content);

1 Ответ

0 голосов
/ 08 марта 2019

возможно попробуйте это:

$handle = curl_init('http://api.example.com/v1/api/auth/login?grant_type=client_id');
$header = array();
$header[] = 'Content-Type: application/json';
$header[] = 'Authorization: Basic DdJfd1Bxx2NxMkYwNjzzdl9mejJZIFKVQlBc';
curl_setopt($handle, CURLOPT_HTTPHEADER, $header);
$resp = curl_exec($handle);
var_dump(curl_error($handle));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...