Git Product home page Git Product logo

Comments (2)

theopolisme avatar theopolisme commented on June 26, 2024

Any updates on this? We're getting these errors too.

from browser-request.

samuelms1 avatar samuelms1 commented on June 26, 2024

I ended up writing a small shim for the request module that fit our very targeted needs (implemented the very minimum that we use from the request module). I would strongly prefer the browser-request module, but to get around this bug we used the shim (note that it assumes jquery is on the page as $).

module.exports = {
    get: function(options, callback){
        $.ajax({
            url: options.url,
            timeout: options.timeout,
            dataType: options.json === true ? 'json' : null,
            error: function(jqXHR, textStatus, errorThrown) {
                var errorMessage = "Error occurred while requesting " + options.url + ".";
                if (textStatus) {
                    errorMessage += "  Error status: " + textStatus;
                    if (errorThrown && errorThrown !== textStatus) {
                        errorMessage += " | Error Thrown: " + errorThrown;
                    }
                }
                var error = new Error(errorMessage);
                if (textStatus === 'timeout') {
                    error.code === 'ETIMEDOUT'
                } 
                error.status = jqXHR.status;
                callback(error);
            },
            success: function(data, textStatus, jqXHR){
                var responseObj = {
                    statusCode: jqXHR.status,
                    body: data
                };
                callback(null, responseObj, data);
            }
        });
    }
};

In package.json I added this:

{
  ...
  "browser": {
    "request": "./lib/browserRequestShim.js"
  }
  ...
}

from browser-request.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.