microsoft/vscode-react-native

Public

mirrored fromhttps://github.com/microsoft/vscode-react-nativeAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
efbe1ba61ca71887b3fa9a2d1ae3afb9a78cb87e

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

src/common/node/request.ts

28lines · modepreview

// 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 Q = require("q");

export class Request {
    public static request(url: string, expectStatusOK = false): Q.Promise<any> {
        let deferred = Q.defer<string>();
        let req = http.get(url, function(res) {
            let responseString = "";
            res.on("data", (data: Buffer) => {
                responseString += data.toString();
            });
            res.on("end", () => {
                if (expectStatusOK && res.statusCode !== 200) {
                    deferred.reject(new Error(responseString));
                } else {
                    deferred.resolve(responseString);
                }
            });
        });
        req.on("error", (err: Error) => {
            deferred.reject(err);
        });
        return deferred.promise;
    }
}