aboutsummaryrefslogtreecommitdiffstats
path: root/includes/api/ApiFormatJson.php
diff options
context:
space:
mode:
authorBrad Jorsch <bjorsch@wikimedia.org>2015-03-27 12:36:19 -0400
committerGergő Tisza <tgr.huwiki@gmail.com>2015-08-05 12:26:04 -0700
commit14560cb1b05e87a7f6814289f1e384f4ce40c019 (patch)
treecbd85bcfd1f8845eae64b447c6452eab79019458 /includes/api/ApiFormatJson.php
parentd4111ed30d2f7a75f6846c008d3c851b4f0e3c0b (diff)
downloadmediawikicore-14560cb1b05e87a7f6814289f1e384f4ce40c019.tar.gz
mediawikicore-14560cb1b05e87a7f6814289f1e384f4ce40c019.zip
API: Ignore '_' parameter in jsonp callback mode
jQuery has a misfeature where it by default appends a '_' parameter as a cachebuster in jsonp mode. So, when in jsonp mode, mark this bogus parameter as used to avoid an unnecessary warning. Bug: T94015 Change-Id: I43373439a3605e4589315139c30976c6c2f68542
Diffstat (limited to 'includes/api/ApiFormatJson.php')
-rw-r--r--includes/api/ApiFormatJson.php9
1 files changed, 9 insertions, 0 deletions
diff --git a/includes/api/ApiFormatJson.php b/includes/api/ApiFormatJson.php
index 43877b784b98..9538842466e9 100644
--- a/includes/api/ApiFormatJson.php
+++ b/includes/api/ApiFormatJson.php
@@ -35,6 +35,15 @@ class ApiFormatJson extends ApiFormatBase {
public function __construct( ApiMain $main, $format ) {
parent::__construct( $main, $format );
$this->isRaw = ( $format === 'rawfm' );
+
+ if ( $this->getMain()->getCheck( 'callback' ) ) {
+ # T94015: jQuery appends a useless '_' parameter in jsonp mode.
+ # Mark the parameter as used in that case to avoid a warning that's
+ # outside the control of the end user.
+ # (and do it here because ApiMain::reportUnusedParams() gets called
+ # before our ::execute())
+ $this->getMain()->getCheck( '_' );
+ }
}
public function getMimeType() {