2005-12-14 [長年日記]
_ pingサーバーの不具合を修正しました
ここ一ヶ月ほど1470.netのpingサーバー(http://1470.net/api/ping)が正常に動作していませんでした。詳しくは、バグトラックの方に書きましたが、PEAR XML_RPCライブラリをアップデートした際に、getParamメソッドの挙動が変わっていたため、省略可能なパラメータを省略したメッセージで受信エラーが発生していたようです。
_ XML_RPC_Message::getParamの仕様変更
というわけで、XML/RPC.phpのソースを見てみたところ、
function getParam($i)
{
global $XML_RPC_err, $XML_RPC_str;
if (isset($this->params[$i])) {
return $this->params[$i];
} else {
$this->raiseError('The submitted request did not contain this parameter',
XML_RPC_ERROR_INCORRECT_PARAMS);
return new XML_RPC_Response(0, $XML_RPC_err['incorrect_params'],
$XML_RPC_str['incorrect_params']);
}
}
という処理になっていたようです。この処理は「@since Returns XML_RPC_Response object on error since Release 1.3.0」なんだそうな。マニュアルが仕様変更に追随していなかったのね。
[TrackBack URL: http://tdiary.ishinao.net/tb.rb/20051214]



bugs.php.netでマニュアルの不都合を報告するといいと思います.
manual of getParam method is old.
とか適当に(本当に適当だ
http://pear.php.net/bugs/の方に報告しておきました。
http://1470.net/api/ping
現在更新通知を送ろうとすると403 Forbiddenになっています。
http://1470.net/api/pingへピングを送っても403 Forbiddenというエラーメッセージが帰ってきます。
おそらく1ヶ月以上はその状況が続いています。