Trying SuperAgent

by asicfr

Babel + JSX

const makeCancelable = (promise) => {
  let hasCanceled = false;

  const wrappedPromise = new Promise((resolve, reject) => {
    promise.then(val =>
      (hasCanceled ? reject({ isCanceled: true }) : resolve(val))
    );
    promise.catch(error =>
      (hasCanceled ? reject({ isCanceled: true }) : reject(error))
    );
  });

  return {
    promise: wrappedPromise,
    cancel() {
      hasCanceled = true;
    },
  };
};




request
  .get("http://api.fixer.io/latest?symbols=USD,GBP")
  .end (err, res) ->
    console.log(JSON.parse(res.text))