我正在尝试使用 apache xmlrpc 管理小笨手服务的帖子。支持并不伟大,他们无法真正帮助。他们说weblog支持 metaweblog api

我正在尝试使用rpc “metaweblog.getpost“

token = client.invoke("metaWeblog.getPost", new Object[] {123, // also tried "123" and "\"123\""
                                                          "username", 
                                                          "password"});
.

当我使用123(没有引号)时,我得到这个响应: java.lang.exception:java.lang.Integer不能投射到java.lang.string

当我使用“123”或“\”123 \“”(引号)时,我得到此响应: java.lang.exception:无效的PostID格式:123

此代码确实使用我的WordPress WebLog。

有帮助吗?

解决方案

WordPress可能有效,因为它在PHP中,并不像Java一样敏感。

metaweblog的文档说请求的原始XML表示如下所示:

<?xml version="1.0"?>

<methodCall>

    <methodName>metaWeblog.getPost</methodName>

    <params>

        <param>

            <value><i4>1829</i4></value>

            </param>

        <param>

            <value>Bull Mancuso</value>

            </param>

        <param>

            <value><base64>bm93YXk=</base64></value>

            </param>

        </params>

    </methodCall>
. 因此,您需要尝试将参数设置为正确类型的变量

postid需要是32大整数,密码是base64编码,用户名是一个字符串。

正确声明您的变量并传递变量,未引用常量,调用方法。

然后,RPC库下方在引擎盖下形成的XML将确保世代odicetagcode围绕帖子ID等。

希望这有助于一点。至少,您可以证明另一边没有正确实施MetaweBlog。最多,你已经解决了你的问题并且可以继续移动。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top