Bitcoin Core 28.99.0
P2P Digital Currency
|
Go to the source code of this file.
Classes | |
class | JSONRPCRequest |
Enumerations | |
enum class | JSONRPCVersion { V1_LEGACY , V2 } |
Functions | |
UniValue | JSONRPCRequestObj (const std::string &strMethod, const UniValue ¶ms, const UniValue &id) |
JSON-RPC 2.0 request, only used in bitcoin-cli. More... | |
UniValue | JSONRPCReplyObj (UniValue result, UniValue error, std::optional< UniValue > id, JSONRPCVersion jsonrpc_version) |
UniValue | JSONRPCError (int code, const std::string &message) |
bool | GenerateAuthCookie (std::string *cookie_out, std::optional< fs::perms > cookie_perms=std::nullopt) |
Generate a new RPC authentication cookie and write it to disk. More... | |
bool | GetAuthCookie (std::string *cookie_out) |
Read the RPC authentication cookie from disk. More... | |
void | DeleteAuthCookie () |
Delete RPC authentication cookie from disk. More... | |
std::vector< UniValue > | JSONRPCProcessBatchReply (const UniValue &in) |
Parse JSON-RPC batch reply into a vector. More... | |
|
strong |
void DeleteAuthCookie | ( | ) |
Delete RPC authentication cookie from disk.
Definition at line 165 of file request.cpp.
bool GenerateAuthCookie | ( | std::string * | cookie_out, |
std::optional< fs::perms > | cookie_perms = std::nullopt |
||
) |
Generate a new RPC authentication cookie and write it to disk.
the umask determines what permissions are used to create this file - these are set to 0077 in common/system.cpp.
Definition at line 100 of file request.cpp.
bool GetAuthCookie | ( | std::string * | cookie_out | ) |
Read the RPC authentication cookie from disk.
Definition at line 146 of file request.cpp.
UniValue JSONRPCError | ( | int | code, |
const std::string & | message | ||
) |
Parse JSON-RPC batch reply into a vector.
Definition at line 177 of file request.cpp.
UniValue JSONRPCReplyObj | ( | UniValue | result, |
UniValue | error, | ||
std::optional< UniValue > | id, | ||
JSONRPCVersion | jsonrpc_version | ||
) |
Definition at line 51 of file request.cpp.
UniValue JSONRPCRequestObj | ( | const std::string & | strMethod, |
const UniValue & | params, | ||
const UniValue & | id | ||
) |
JSON-RPC 2.0 request, only used in bitcoin-cli.
JSON-RPC 2.0 request, only used in bitcoin-cli.
Bitcoin speaks version 1.0 for maximum compatibility, but uses JSON-RPC 1.1/2.0 standards for parts of the 1.0 standard that were unspecified (HTTP errors and contents of 'error').
1.0 spec: http://json-rpc.org/wiki/specification 1.2 spec: http://jsonrpc.org/historical/json-rpc-over-http.html
If the server receives a request with the JSON-RPC 2.0 marker {"jsonrpc": "2.0"}
then Bitcoin will respond with a strictly specified response. It will only return an HTTP error code if an actual HTTP error is encountered such as the endpoint is not found (404) or the request is not formatted correctly (500). Otherwise the HTTP code is always OK (200) and RPC errors will be included in the response body.
2.0 spec: https://www.jsonrpc.org/specification
Also see http://www.simple-is-better.org/rpc/#differences-between-1-0-and-2-0
Definition at line 41 of file request.cpp.