Developer library
FiveM RPC
A lightweight request-and-response library for clean communication between FiveM browser, client and server environments.
Links
GitHubView the source code and download FiveM RPC for free.Open resource ↗Showcase serverJoin the Aquiver showcase server.Open resource ↗
Request and response
Cross-environment calls
Call registered server-side handlers directly from your browser or client code.
Returned responses
Await the result in the original environment instead of coordinating separate request and response events.
Authentication example
Configuration
Browser request
Call the registered server handler from your NUI and process the returned character data.
FRONTEND, Calling the server
import rpc from "browser.ts"
rpc.callGlobalServer("auth:sendLoginRequest", {
username: "freamee",
password: "password"
}).then(res => {
console.log(JSON.stringify(res));
// {
// charId = 1
// charName = "Ray Shelby",
// },
// {
// charId = 2,
// charName = "Ray Washington"
// }
});
Configuration
Server handler
Register the matching global RPC handler, perform authentication and return the response.
Serverside, register the event and do the auth, then return a response
exports["fivem-rpc"]:registerGlobal("auth:sendLoginRequest", function(d)
local username = d.username
local password = d.password
-- Perform your authentication checks here.
-- Return the characters available to the authenticated player.
return {
{
charId = 1,
charName = "Ray Shelby",
},
{
charId = 2,
charName = "Ray Washington"
}
}
end)