支持所有标准的web3 JSON-RPC API。 JSON-RPC在多种传输方式上提供。WSC支持基于HTTP,WebSocket和Unix域套接字的JSON-RPC。必须通过命令行传输。 WSC JSON-RPC API使用作用命名。RPC方法根据其用途分为几类。所有方法名称均由名称空间,下划线和名称空间内的实际作用名称组成。例如,该`wsc_call`方法位于`wsc`名称中。 可以基于每个命名的作用启用对RPC的访问。在边栏中查找各个名称空间的文档。 # HTTP服务器 要启用HTTP服务器,请使用`--rpc`标志。 ~~~ wsc --rpc ~~~ 默认情况下,wsc接受来自回送接口(127.0.0.1)的连接。默认监听端口为8545。您可以使用`--rpcport`和`--rpcaddr`标志来自定义地址和端口。 ~~~ wsc --rpc --rpcport 3334 ~~~ 必须将JSON-RPC方法名称空间列入白名单,才能通过HTTP服务器使用。`-32602`如果调用未列入白名单的名称空间,则会生成带有错误代码的RPC错误。默认白名单允许访问“ eth”和“ shh”名称空间。要启用对其他API(例如帐户管理(“个人”)和调试(“调试”))的访问,必须通过该`--rpcapi`标志对其进行配置。我们不建议您通过HTTP启用此类API,因为对这些方法的访问会增加攻击面。 ~~~ wsc --rpc --rpcapi personal,wsc,net,web3b ~~~ 由于可以从任何本地应用程序访问HTTP服务器,因此服务器中内置了附加保护功能,以防止从网页滥用API。如果要允许从网页访问API,则必须将服务器配置为接受带有`--rpccorsdomain`标志的跨域请求。 ### WebSocket服务器 WebSocket终结点的配置类似于HTTP传输。要启用WebSocket访问,请使用`--ws`标志。WebSocket的默认端口为8546。`--wsaddr`,`--wsport`和`--wsapi`标志可用于自定义WebSocket服务器的设置。 ~~~ wsc --ws --wsport 3334 --wsapi eth,net,web3 ~~~ 跨域请求保护也适用于WebSocket服务器。使用该`--wsorigins`标志允许从网页访问服务器: ~~~ wsc --ws --wsorigins http://myapp.example.com ~~~ 与一样`--rpccorsdomain`,使用`--wsorigins '*'`可以从任何来源访问。 ### IPC服务器 UNIX域套接字上还提供了JSON-RPC API。该服务器默认情况下处于启用状态,并且可以访问所有JSON-RPC名称空间。 默认情况下,侦听套接字放置在数据目录中。在Linux和macOS上,geth套接字的默认位置是 ~~~ ~/.worldchain/wsc.ipc ~~~ 在Windows上,通过命名提供IPC。wsc的默认位置是: ~~~ \\.\pipe\wsc.ipc ~~~ 您可以使用该`--ipcpath`标志配置套接字的位置。可以使用该`--ipcdisable`标志禁用IPC。