Возможно ли сделать запрос GET API-интерфейсу JSON RPC? Я пытаюсь сделать это, используя random.org api (https://api.random.org/json-rpc/1/). Он работает, если я использую запрос POST, но мне нужно сделать запросы GET для всех API-интерфейсов, которые я использую в приложении, над которым я работаю.Выполнение запроса GET API-интерфейса JSON RPC вместо запроса POST
Вот запрос пост, который работает:
function getNewThing(apiUrl) {
data = {
"jsonrpc": "2.0",
"method": "generateIntegers",
"params": {
"apiKey": "9b6ed250-67fc-4afd-b60b-09c6076e5178",
"n": 1,
"min": 0,
"max": 1000000,
"replacement": true,
"base": 10
},
"id": 683489
}
// ajax call to the api
return $.ajax({
type: "POST",
url: apiUrl,
data: JSON.stringify(data),
success: function(result) {
console.log(result)
},
error: function(err) {
console.log(err)
}
});
}
Причина, я думаю, что это может быть превращена в запрос GET, потому что эта документация подразумевает это может быть: http://www.jsonrpc.org/historical/json-rpc-over-http.html#encoded-parameters
Я пробовал настроить URL следующие способы не повезло:
с кодировкой URL для Params:
https://api.random.org/json-rpc/1/invoke?jsonrpc=2.0&method=generateIntegers¶ms=%7B%22apiKey%22%3A%20%229b6ed250-67fc-4afd-b60b-09c6076e5178%22%2C%22n%22%3A%201%2C%22min%22%3A%200%2C%22max%22%3A%201000000%2C%22replacement%22%3A%20true%2C%22base%22%3A%2010%7D&id=683489
Без:
'https://api.random.org/json-rpc/1/invoke?jsonrpc=2.0&method=generateIntegers¶ms={"apiKey": "9b6ed250-67fc-4afd-b60b-09c6076e5178","n": 1,"min": 0,"max": 1000000,"replacement": true,"base": 10}&id=683489'
Что мне не хватает? Заранее спасибо!
Ссылка на ссылку docs: вам нужно кодировать параметры base64 – charlietfl