Mvolz has submitted this change and it was merged.

Change subject: /url endpoint checks for missing POST params
......................................................................


/url endpoint checks for missing POST params

The /url endpoint was not checking for missing
POST parameters and an error was occuring when
the url parameter was missing.

Bug: T76702
Change-Id: I8a32d34ac805d458a2fe0954de8811bf4a41ade2
---
M server.js
1 file changed, 23 insertions(+), 17 deletions(-)

Approvals:
  Mvolz: Verified; Looks good to me, approved



diff --git a/server.js b/server.js
index 18ad095..6fa5b9e 100644
--- a/server.js
+++ b/server.js
@@ -91,30 +91,36 @@
                format = 'mwDeprecated';
        }
 
-       parsedURL = urlParse.parse(requestedURL);
-       //defaults to http if no protocol specified.
-       if (!parsedURL.protocol){
-               requestedURL = 'http://'+ urlParse.format(parsedURL);
-       }
-       else {requestedURL = urlParse.format(parsedURL);}
-
        opts = {
                zoteroURL:zoteroURL,
                sessionID: sessionID,
                format: format
        };
 
-       requestFromURL(requestedURL, opts, function(error, responseCode, body){
-               if (!error){
-                       res.statusCode = responseCode;
-                       res.send(body);
-               }
-               else {
-                       res.statusCode = 520;
-                       res.send(body);
-               }
-       });
+       if (!requestedURL){
+               res.statusCode = 400;
+               res.setHeader("Content-Type", "text/plain");
+               res.send('"url" is a required parameter');
+       } else {
 
+               parsedURL = urlParse.parse(requestedURL);
+               //defaults to http if no protocol specified.
+               if (!parsedURL.protocol){
+                       requestedURL = 'http://'+ urlParse.format(parsedURL);
+               }
+               else {requestedURL = urlParse.format(parsedURL);}
+
+               requestFromURL(requestedURL, opts, function(error, 
responseCode, body){
+                       if (!error){
+                               res.statusCode = responseCode;
+                               res.send(body);
+                       }
+                       else {
+                               res.statusCode = 520;
+                               res.send(body);
+                       }
+               });
+       }
 });
 
 /**Endpoint for retrieving citations based on search term (URL,DOI)*/

-- 
To view, visit https://gerrit.wikimedia.org/r/179445
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I8a32d34ac805d458a2fe0954de8811bf4a41ade2
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/services/citoid
Gerrit-Branch: master
Gerrit-Owner: Mvolz <mv...@wikimedia.org>
Gerrit-Reviewer: Mvolz <mv...@wikimedia.org>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to