Livejournal XML-RPC协议不匹配

时间:2013-01-10 10:32:13

标签: perl xml-rpc

我有以下Perl脚本:

use strict;
use XML::RPC;
use Digest::MD5 qw(md5_hex);
use 5.010;

my ($username, $password)  = qw(foo bar);
my $xmlrpc = XML::RPC->new('http://www.livejournal.com/interface/xmlrpc', (output_encoding => 'UTF-8' ));
my $result = $xmlrpc->call( 'LJ.XMLRPC.getevents', { username => $username, hpassword => md5_hex($password), selecttype => "syncitems"} );

但是,服务器响应207错误:客户端错误:协议版本不匹配:无法使用非Unicode客户端显示/编辑Unicode帖子。有关详细信息,请参阅http://www.livejournal.com/support/encodings.bml

根据API规范,LJ应该使用UTF-8。所以我不明白我做错了什么。

1 个答案:

答案 0 :(得分:2)

好的,我解决了。问题是我没有指定可选(这就是为什么我没注意到它的第一个位置)参数 ver 默认为 0 并且应该被分配 1 如果数据包含非ASCII符号。