diff --git a/superagent/superagent-tests.ts b/superagent/superagent-tests.ts
index 466fc33a12..58b6840440 100644
--- a/superagent/superagent-tests.ts
+++ b/superagent/superagent-tests.ts
@@ -1,17 +1,20 @@
-///
+///
///
// 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);
-
-
diff --git a/superagent/superagent.d.ts b/superagent/superagent.d.ts
index a5118a7645..493d287efb 100644
--- a/superagent/superagent.d.ts
+++ b/superagent/superagent.d.ts
@@ -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
// 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;