什么是 rpc 网络地址?

Posted

技术标签:

【中文标题】什么是 rpc 网络地址?【英文标题】:What is an rpc network address? 【发布时间】:2020-08-10 11:22:04 【问题描述】:

我正在尝试使用 random.org 在我的 go 程序中生成随机数。看来我需要建立一个json-rpc连接,所以我尝试使用jsonrpc.Dial(network, adress)的方法。所有 api 说的是我需要调用 https://api.random.org/json-rpc/2/invoke;我应该使用什么作为网络(以及什么是网络)?

【问题讨论】:

【参考方案1】:

如果您查看the source code 中的jsonrpc.Dial,您会看到network 参数直接传递给net.Dial,其godoc 解释说:

已知网络有“tcp”、“tcp4”(仅限 IPv4)、“tcp6”(仅限 IPv6)、“udp”、“udp4”(仅限 IPv4)、“udp6”(仅限 IPv6)、 “ip”、“ip4”(仅限 IPv4)、“ip6”(仅限 IPv6)、“unix”、“unixgram”和“unixpacket”。

【讨论】:

那么我应该使用哪一个?我不太了解网络,抱歉。我已经尝试过jsonrpc.Dial("tpc", "api.random.org/json-rpc/2/invoke:https"),但似乎没有任何变化,所有这些都导致panic: dial tcp: lookup api.random.org/json-rpc/2/invoke: no such host @lolad,将Dial("tcp", "api.random.org:443") 用于 HTTPS。 api.random.org/json-rpc/2/invoke 不是有效的主机名。 谢谢,现在看来至少可以通过了,但是你能解释一下 443 吗?并且还丢弃了json-rpc/2/invoke,这些方法肯定不会正常工作吗? 443 是 HTTPS 的端口。您可能需要阅读一些有关 HTTP 的基本知识。我们无法真正为您提供关于 SO 上 cmets(或答案)中 IP 和 HTTP 基础知识的完整入门。

以上是关于什么是 rpc 网络地址?的主要内容,如果未能解决你的问题,请参考以下文章

通俗易懂的rpc原理

在释放接口 本地连接 时出错: 地址仍未与网络终结点关联

以太坊如何解除锁定账户地址 调用json rpc api

RPC

轻量级RPC设计与实现第二版

ccna中,下一跳地址和目地网络地址分别是什么意思?