我正在使用Mediawiki创建一个项目,并在一个类别中添加了150个成员。我需要使用每个类别成员的缩略图检索JSON,以便在我的应用程序中使用它。
但遗憾的是,我无法检索该类别中所有类别成员的缩略图。只有48个成员在该类别中显示缩略图的URL,即使这些图像在网站中正确添加为48个成员添加。
我在做什么错误,在我的JSON回复中出现了这个错误。
查询示例:
http://example.org/api.php?gcmlimit=max&action=query&gcmtitle=Category%3AName&pilimit=max&prop=pageimages&pithumbsize=100&generator=categorymembers&format=json&continue=
上面的URL只是一个示例,用于显示我用于检索json文件响应的查询。
先谢谢
答案 0 :(得分:0)
这个解决方案对我有用,我成功了。
您可以使用pageImages查询
增加JSON中的缩略图网址检索限制您必须转到已安装此扩展程序的扩展程序。
在里面会有一个名为APIQueryPageImages.php的php文件在include文件夹中。 在php文件夹里面有一个函数" getAllowedParams()"将其中定义的值更改为必要值,如下所示:
public function getAllowedParams() {
return array(
'prop' => array(
ApiBase::PARAM_TYPE => array( 'thumbnail', 'name', 'original' ),
ApiBase::PARAM_ISMULTI => true,
ApiBase::PARAM_DFLT => 'thumbnail|name',
),
'thumbsize' => array(
ApiBase::PARAM_TYPE => 'integer',
APiBase::PARAM_DFLT => 50,
),
'limit' => array(
ApiBase::PARAM_DFLT => 1,
ApiBase::PARAM_TYPE => 'limit',
ApiBase::PARAM_MIN => 1,
ApiBase::PARAM_MAX => 500, //Here you can change the limit of value for user which was by default "50"
ApiBase::PARAM_MAX2 => 600, ////Here you change the limit of value for bots which was by default "100"
),
'continue' => array(
ApiBase::PARAM_TYPE => 'integer',
/** @todo Once support for MediaWiki < 1.25 is dropped, just use ApiBase::PARAM_HELP_MSG directly */
defined( 'ApiBase::PARAM_HELP_MSG' ) ? ApiBase::PARAM_HELP_MSG : '' => 'api-help-param-continue',
),
);
}