// Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for details. import http = require("http"); import https = require("https"); export class Request { public static request(url: string, expectStatusOK = false, isHttps = false): Promise { return new Promise((resolve, reject) => { // CodeQL [SM04580] extension send all requests to 'localhost:port' which are built by local application const req = (isHttps ? https : http).get(url, res => { let responseString = ""; res.on("data", (data: Buffer) => { responseString += data.toString(); }); res.on("end", () => { if (expectStatusOK && res.statusCode !== 200) { reject(new Error(responseString)); } else { resolve(responseString); } }); }); req.on("error", (err: Error) => { reject(err); }); }); } }