Pelican - v0.0.7
    Preparing search index...

    Namespace jsonrpc

    The jsonrpc module provides a JSON-RPC server and router for handling JSON-RPC requests.

    import { jsonrpc, json } from "pelican";
    import { add_users } from "./users";

    PELICAN = {
    logger_level: "error",
    };

    const server = new jsonrpc.JsonRpcServer({
    port: 1234,
    host: "localhost",
    });

    const router = new jsonrpc.JsonRpcRouter();

    add_users(router);
    router.add_method("ping", (props: { message: string }) => {
    return `Pong, ${props.message}!`;
    });

    router.add_method("use_safe_encode", () => {
    return {
    message: "This is a safe encoded message.",
    function: function () {}, // This will be serialized as 'function'
    };
    });

    router.add_method("throws", () => {
    throw new Error("This is an error from the server.");
    });

    while (true) {
    server.process_rpc(router);
    }
    local ____lualib = require("lualib_bundle")
    local Error = ____lualib.Error
    local RangeError = ____lualib.RangeError
    local ReferenceError = ____lualib.ReferenceError
    local SyntaxError = ____lualib.SyntaxError
    local TypeError = ____lualib.TypeError
    local URIError = ____lualib.URIError
    local __TS__New = ____lualib.__TS__New
    local ____exports = {}
    local ____pelican = require("pelican")
    local jsonrpc = ____pelican.jsonrpc
    local ____users = require("server.users")
    local add_users = ____users.add_users
    PELICAN = {logger_level = "error"}
    local server = jsonrpc.JsonRpcServer.new({port = 1234, host = "localhost"})
    local router = jsonrpc.JsonRpcRouter.new()
    add_users(nil, router)
    router:add_method(
    "ping",
    function(props)
    return ("Pong, " .. props.message) .. "!"
    end
    )
    router:add_method(
    "use_safe_encode",
    function()
    return {
    message = "This is a safe encoded message.",
    ["function"] = function(self)
    end
    }
    end
    )
    router:add_method(
    "throws",
    function()
    error(
    __TS__New(Error, "This is an error from the server."),
    0
    )
    end
    )
    while true do
    server:process_rpc(router)
    end
    return ____exports

    Classes

    JsonRpcRouter
    JsonRpcServer

    Type Aliases

    JsonRpcServerOptions