jenkins-bot has submitted this change and it was merged.
Change subject: Add User-Agent header to API requests.
......................................................................
Add User-Agent header to API requests.
Change-Id: I267744a458a96d8fdd01a255078f68c3e1078659
---
M lib/api.js
A lib/headers.js
M lib/image.js
M lib/parsoid.js
4 files changed, 17 insertions(+), 4 deletions(-)
Approvals:
Arlolra: Looks good to me, approved
jenkins-bot: Verified
diff --git a/lib/api.js b/lib/api.js
index 62529f3..ccdeb8e 100644
--- a/lib/api.js
+++ b/lib/api.js
@@ -3,6 +3,7 @@
require('core-js/shim');
var Promise = require('prfun');
+var headers = require('./headers');
var querystring = require('querystring');
var request = Promise.promisify(require('./retry-request'), true);
var url = require('url');
@@ -26,8 +27,8 @@
apiURL = 'https:' + apiURL;
}
apiURL = url.resolve(apiURL + '/', 'api.php') + '?' +
querystring.stringify(queryobj);
-
- return request({ url: apiURL, encoding: 'utf8', pool: false, log:
this.log }).
+
+ return request({ url: apiURL, encoding: 'utf8', headers: headers, pool:
false, log: this.log }).
spread(function(response, body) {
if (response.statusCode !== 200) {
throw new Error('Unexpected HTTP status: ' +
diff --git a/lib/headers.js b/lib/headers.js
new file mode 100644
index 0000000..d0851f5
--- /dev/null
+++ b/lib/headers.js
@@ -0,0 +1,9 @@
+// Request headers for API/Parsoid/RESTBase requests
+"use strict";
+require('core-js/shim');
+var packageJson = require('../package.json');
+
+// These are the headers we will send with every API request.
+module.exports = {
+ 'User-Agent': [packageJson.name, packageJson.version].join('/')
+};
diff --git a/lib/image.js b/lib/image.js
index 13e9a50..ae8323b 100644
--- a/lib/image.js
+++ b/lib/image.js
@@ -4,6 +4,7 @@
var Promise = require('prfun');
var fs = require('fs');
+var headers = require('./headers');
var path = require('path');
var tmp = require('tmp');
@@ -152,7 +153,7 @@
};
var doRequest = function(retries) {
- return rrequest({ url: realURL, encoding: null, pool: false,
log: log, stream: true }).spread(function(inStream, req) {
+ return rrequest({ url: realURL, encoding: null, headers:
headers, pool: false, log: log, stream: true }).spread(function(inStream, req) {
return mkOutStream().then(function(outStream) {
return new Promise(function(resolve, reject) {
outStream.on('error',
reject).on(FINISH, resolve);
diff --git a/lib/parsoid.js b/lib/parsoid.js
index 4d78d2a..d6e5081 100644
--- a/lib/parsoid.js
+++ b/lib/parsoid.js
@@ -5,6 +5,7 @@
var domino = require('domino');
var fs = require('fs');
+var headers = require('./headers');
var path = require('path');
var request = require('./retry-request');
var url = require('url');
@@ -216,7 +217,7 @@
}
var apiURL = findApiUrl('GET', this.apiVersion, this.wikis[wiki],
title, revid);
- request({ url: apiURL.url, encoding: 'utf8', pool: false, log: this.log
}, function(error, response, body) {
+ request({ url: apiURL.url, encoding: 'utf8', headers: headers, pool:
false, log: this.log }, function(error, response, body) {
if (error || response.statusCode !== 200) {
deferred.reject('Error fetching '+apiURL.api+' result:
' + apiURL.url);
} else {
@@ -242,6 +243,7 @@
url: apiURL.url,
method: 'POST',
encoding: 'utf8',
+ headers: headers,
pool: false,
log: this.log,
form: (apiURL.api==='parsoid1' ? { wt: wikitext, body:
true } :
--
To view, visit https://gerrit.wikimedia.org/r/235462
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I267744a458a96d8fdd01a255078f68c3e1078659
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Collection/OfflineContentGenerator/bundler
Gerrit-Branch: master
Gerrit-Owner: Cscott <[email protected]>
Gerrit-Reviewer: Arlolra <[email protected]>
Gerrit-Reviewer: Cscott <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits