Вызов API фиксатора в plsql для получения курса валюты
У меня есть API Fixer.io для получения текущего курса валюты, я хочу получить курс в PLSQL. До этого я пытался в Php, чтобы получить скорость. Теперь я хочу вызвать то же самое в PLSQL, чтобы получить текущую скорость. Что я пробовал в PLSQL
declare
req UTL_HTTP.REQ;
BEGIN
req := UTL_HTTP.BEGIN_REQUEST('http://data.fixer.io/api/latest?access_key=access_key');
UTL_HTTP.SET_HEADER(req, 'User-Agent', 'Mozilla/4.0');
UTL_HTTP.GET_RESPONSE(req);
dbms_output.put_line('hitting');
EXCEPTION
WHEN UTL_HTTP.END_OF_BODY THEN
dbms_output.put_line('exception');
END;
это не работает и дает приведенную ниже ошибку
GET_RESPONSE' is not a procedure or is undefined
нужно предложение относительно в соответствии с требованиями
1 ответ
Проблема в том, что GET_RESPONSE является функцией, а не процедурой, поэтому вам необходимо вернуть ее обратно в переменную, см. https://docs.oracle.com/database/121/ARPLS/u_http.htm для более подробного описания.
Вам нужно будет объявить переменную ответа
resp UTL_HTTP.RESP;
тогда ваш звонок для получения ответа будет выглядеть
resp := UTL_HTTP.GET_RESPONSE(req);