Pergunta

Eu estou tentando usar o Apache XMLRPC para gerenciar posts em um pequeno serviço de weblog.O suporte não é grande lá, e eles não podem realmente ajudar.Eles dizem que o blog oferece suporte a api metaweblog.

Eu estou tentando recuperar todos os meus posts, usando o rpc "metaWeblog.getPost":

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

Quando eu usar 123 (sem aspas), recebo esta resposta: o java.lang.Exceção:o java.lang.Inteiro não pode ser convertido para o java.lang.Cadeia

Quando eu uso o "123" ou "\"123\"" (aspas), recebo esta resposta: o java.lang.Exceção:Inválido postid formato:123

Este código não funciona com o meu Wordpress blog.

Foi útil?

Solução

Wordpress provavelmente funciona, porque é em PHP e não como tipo sensível como a do java.

O google docs para metaWeblog dizer que as matérias-representação xml de um pedido parecido com este:

<?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>

Então você precisa tentar estabelecer os parâmetros como variáveis do tipo

O postId precisa ser uma versão de 32 grande número inteiro, a senha é codificada em base64, o nome de usuário é uma seqüência de caracteres.

Declarar as variáveis corretamente e passar variáveis, que não são cotados constantes, para o método invoke.

Em seguida, o xml que é formado sob o capô pela biblioteca rpc irá certificar-se de que <i4></i4> é o id do post, etc.

Espero que isso ajude um pouco.No mínimo, você pode provar que o outro lado não está devidamente execução metaWeblog.Na melhor das hipóteses, você já resolveu o seu problema e pode se manter em movimento.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top