如何通过远程方法发送 json-rpc http post 请求并在 java 中传递加密参数

Posted

技术标签:

【中文标题】如何通过远程方法发送 json-rpc http post 请求并在 java 中传递加密参数【英文标题】:how to send json-rpc http post request over remote methods and passing encrypted params in java 【发布时间】:2015-12-28 06:11:20 【问题描述】:

我可以使用 curl 通过远程方法发送请求: 卷曲http://admin:@192.0.2.1/json_rpc --数据"method":"ip.status.interface.ipv4.get","params":[],"id":"0" 但是从我的 JsonRpc 服务类发送它时,我得到了

com.googlecode.jsonrpc4j.HttpException: 401 未授权

访问此 URL 需要授权。


Vitesse Web 服务器位于 192.0.2.1 端口 80

【问题讨论】:

【参考方案1】:

由于您可以通过 curl 访问 api,因此您的 api 设置似乎没有任何问题。问题可能出在您的调用代码(JsonRPC 服务)上。请检查您的 JsonRPC 服务上是否设置了任何可能未授权在端口 80 访问 192.0.2.1 的代理。尝试查看网络级别,因为您可以通过 curl 调用 api。

【讨论】:

感谢您的快速回复.. 我需要将我的 json 对象放在哪里 "method":"ip.status.interface.ipv4.ge​​t","params":[],"id ":"0" 在正文中或从我的服务类调用时与 url 一起。 我想这对你来说并不重要。您收到授权错误,这与您发布数据的方式无关。我建议再次查看系统中的任何代理设置 代理设置都不错。我在将 java 类数据中的数据发布到远程服务器时收到此错误 b'coz:- "id":"3878165270952444440","jsonrpc":"2.0","method":"testViteese","params ":[] 同时从 curl 数据发布数据是:- "method":"ip.status.interface.ipv4.ge​​t","params":[],"id":"0" 所以,基本上就在那里是 json 对象的差异。所以请告诉我如何纠正这个错误。方法名称 ip.status.interface.ipv4.ge​​t 在 java 中无效。所以我不能使用这个方法名称。谢谢 使用其他方法名时java中的错误是什么 这一行有多个标记 - void 是变量 ip 的无效类型 - 令牌“接口”上的语法错误,需要标识符 - 方法的返回类型丢失 - 令牌“get”上的语法错误, 在此令牌之后需要标识符 - 令牌“void”上的语法错误,预期为 volatile

以上是关于如何通过远程方法发送 json-rpc http post 请求并在 java 中传递加密参数的主要内容,如果未能解决你的问题,请参考以下文章

如何通过retrofit2发送Json-rpc?

如何最大化比特币 JSON-RPC 性能?

JSON-RPC轻量级远程调用协议介绍及使用

如何在 PHP 中构造 JSON-RPC 结构中的 CURL?

使用golang 实现JSON-RPC2.0

Ember 数据 JSON-RPC 请求示例