Не удалось аутентифицировать REST API с помощью PHP CURL - PullRequest
2 голосов
/ 21 сентября 2019

API нужно, чтобы я использовал HTTP-заголовок для аутентификации каждого запроса POST.Но я получаю «не аутентифицировать» как ответ на каждый раз.(Пожалуйста, помогите мне, это моя первая сделка с REST API). Я предоставил документацию, в которой мне было сказано:

  1. Объединить все элементы ++++
  2. Хешируйте его с помощью HMAC-SHA1 и секретного ключа.
  3. Кодируйте код терминала и подпись в формате base64.
  4. Объедините все со схемой, кодом терминала и подписью и назначьте для авторизации
  5. Подключить сервер с авторизацией

    function callAPI($method,$url,$data,$dt,$auth){
     $curl = curl_init();
    
     switch ($method){
        case "POST":
           curl_setopt($curl, CURLOPT_POST, 1);
           if ($data)
              curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
           break;
        case "PUT":
           curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "PUT");
           if ($data)
              curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
           break;
        default:
           if ($data)
              $url = sprintf("%s?%s", $url, http_build_query($data));
     }
    
     // OPTIONS:
     curl_setopt($curl, CURLOPT_URL, $url);
     //Set the all the data inside the header
     $header = array();
     $header[] = 'Content-Type: application/json';
     $header[] = 'Authorization: '.$auth;
     $header[] = 'Date-Time: '.$dt;
    
     curl_setopt($curl, CURLOPT_HEADER, false);
     curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 20);
     curl_setopt($curl, CURLOPT_TIMEOUT,20);
     curl_setopt($curl, CURLOPT_HTTPHEADER,$header);
     curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
     curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
    
     // EXECUTE:
     $result = curl_exec($curl);
     if(!$result){die("Connection Failure");}
     print_r($result);
     curl_close($curl);
    

    }

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...