@modulae.systems/rpc-client
Version:
An RPC client module
60 lines (59 loc) • 1.69 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.callPublicMethod = callPublicMethod;
exports.callProtectedMethod = callProtectedMethod;
const axios_1 = __importDefault(require("axios"));
async function callPublicMethod(url, method, data) {
try {
const request = {
method,
data,
};
const fullHeaders = {
headers: {
'Content-Type': 'application/json',
},
responseType: "json",
};
const response = await axios_1.default.post(url + "/rpc/public", request, fullHeaders);
return response.data;
}
catch (error) {
return {
error: {
code: 404,
description: "Unable to reach server"
},
data: null,
};
}
}
async function callProtectedMethod(url, method, data, token) {
try {
const request = {
method,
data,
};
const fullHeaders = {
headers: {
'Authorization': "Bearer " + token,
'Content-Type': 'application/json',
},
responseType: "json",
};
const response = await axios_1.default.post(url + "/rpc/protected", request, fullHeaders);
return response.data;
}
catch (error) {
return {
error: {
code: 404,
description: "Unable to reach server"
},
data: null,
};
}
}