Ошибка аутентификации API Visa Developer

1

Я пытаюсь внедрить API-интерфейс VISA Developer Foreign Exchange с использованием CURL, но когда я отправляю запрос, я получаю сообщение об ошибке аутентификации. Я тестирую API локально, и вот моя реализация.

data_string = $_POST;                                                                                   
$ch = curl_init('https://sandbox.api.visa.com/forexrates/v1/foreignexchangerates');   
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json', "Accept:application/json", "Authorization:".base64_encode("usernamestring:passwordstring")));
curl_setopt($ch, CURLOPT_URL, "https://sandbox.api.visa.com/forexrates/v1/foreignexchangerates");  
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data_string));
curl_setopt($ch, CURLOPT_POST, 1); 
$results = curl_exec($ch);

Они также генерируют сертификат.pem certifcate, который я не уверен, должен ли я использовать для запроса API внешнего Exchnage, но можете ли вы посмотреть и посмотреть, что я делаю что-то неправильно?

  • 0
    Так как это https и они генерируют сертификат .pem я думаю, что вы должны предоставить ssl-параметры для запроса curl - также целесообразно использовать useragent.
  • 0
    Можете ли вы дать мне пример?
Показать ещё 2 комментария
Теги:
curl

1 ответ

1

Этот api является взаимным auth и для вызова api вам нужно создать приложение для этого api на платформе разработчика, а затем вам нужно передать свой пароль пользователя в заголовке авторизации. userid и пароль специфичны для созданного вами приложения и могут быть показаны на странице сведений о вашем приложении.

кроме заголовка авторизации вам также нужно отправить файлы ключей и сертификатов. ключевой файл будет создан во время создания приложения и будет загружен в вашу систему.

используйте пример кода, предоставленного для PHP на платформе. Чтобы получить доступ к образцу кода, вам нужно создать приложение для этого api.

Дайте мне знать, если у вас есть еще вопросы?

  • 0
    Спасибо за объяснение этого.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню