Update SuperAgent to version 1.4.0

- Callback now always takes 2 arguments, see https://github.com/visionmedia/superagent/commit/e440274
- Add Request.use()
- Improve tests
This commit is contained in:
Tanguy Krotoff
2015-11-24 11:25:05 +01:00
parent 16134c168d
commit b30dbc4dd3
2 changed files with 34 additions and 10 deletions

View File

@@ -1,17 +1,20 @@
/// <reference path="./superagent.d.ts" />
/// <reference path="superagent.d.ts" />
/// <reference path="../node/node.d.ts" />
// via: http://visionmedia.github.io/superagent/
import request = require('superagent')
import fs = require('fs');
import * as request from 'superagent';
import * as fs from 'fs';
// Examples taken from https://github.com/visionmedia/superagent/blob/gh-pages/docs/index.md
// and https://github.com/visionmedia/superagent/blob/master/Readme.md
request
.post('/api/pet')
.send({ name: 'Manny', species: 'cat' })
.set('X-API-Key', 'foobar')
.set('Accept', 'application/json')
.end((res: request.Response) => {
.end((err, res) => {
if (res.ok) {
console.log('yay got ' + JSON.stringify(res.body));
} else {
@@ -25,7 +28,7 @@ agent
.send({ name: 'Manny', species: 'cat' })
.set('X-API-Key', 'foobar')
.set('Accept', 'application/json')
.end((res: request.Response) => {
.end((err, res) => {
if (res.error) {
console.log('oh no ' + res.error.message);
} else {
@@ -33,8 +36,19 @@ agent
}
});
// Plugins
var nocache = require('superagent-no-cache');
var prefix = require('superagent-prefix')('/static');
var callback = (res: request.Response) => {};
request
.get('/some-url')
.use(prefix) // Prefixes *only* this request
.use(nocache) // Prevents caching of *only* this request
.end(function(err, res){
// Do something
});
var callback = (err: any, res: request.Response) => {};
// Request basics
request
@@ -44,6 +58,10 @@ request
request('GET', '/search')
.end(callback);
request
.get('http://example.com/search')
.end(callback);
request
.head('/favicon.ico')
.end(callback);
@@ -100,6 +118,12 @@ request
.query('range=1..5')
.end(callback);
// HEAD requests
request
.head('/users')
.query({ email: 'joe@smith.com' })
.end(callback);
// POST / PUT requests
request.post('/user')
.set('Content-Type', 'application/json')
@@ -139,6 +163,7 @@ request.post('/user')
request.post('/user')
.type('png');
// Setting Accept
request.get('/user')
.accept('application/json');
@@ -254,5 +279,3 @@ request
.attach('image', 'path/to/tobi.png')
.on('error', (err: any) => {})
.end(callback);

View File

@@ -1,4 +1,4 @@
// Type definitions for SuperAgent 0.15.4
// Type definitions for SuperAgent v1.4.0
// Project: https://github.com/visionmedia/superagent
// Definitions by: Alex Varju <https://github.com/varju/>
// Definitions: https://github.com/borisyankov/DefinitelyTyped
@@ -8,7 +8,7 @@
declare module "superagent" {
import stream = require('stream');
type CallbackHandler = { (err: any, res: request.Response): void; }|{ (res: request.Response): void; };
type CallbackHandler = (err: any, res: request.Response) => void;
var request: request.SuperAgentStatic;
@@ -102,6 +102,7 @@ declare module "superagent" {
set(field: Object): Req;
timeout(ms: number): Req;
type(val: string): Req;
use(fn: Function): Req;
withCredentials(): Req;
write(data: string, encoding?: string): Req;
write(data: Buffer, encoding?: string): Req;