Comparing version 1.2.5 to 1.2.6
@@ -6,2 +6,3 @@ export declare enum Headers { | ||
ACCESS_CONTROL_REQUEST_HEADERS = "Access-Control-Request-Headers", | ||
ALLOW = "Allow", | ||
AUTHORIZATION = "Authorization", | ||
@@ -37,2 +38,8 @@ CACHE_CONTROL = "Cache-Control", | ||
APPLICATION_JSON = "application/json", | ||
TEXT_HTML = "text/html", | ||
MULTIPART_FORMDATA = "multipart/form-data", | ||
IMAGE_JPG = "image/jpg", | ||
IMAGE_PNG = "image/png", | ||
AUDIO_MPEG = "audio/mpeg", | ||
VIDEO_MP4 = "video/mp4", | ||
} |
@@ -10,2 +10,3 @@ "use strict"; | ||
Headers["ACCESS_CONTROL_REQUEST_HEADERS"] = "Access-Control-Request-Headers"; | ||
Headers["ALLOW"] = "Allow"; | ||
Headers["AUTHORIZATION"] = "Authorization"; | ||
@@ -43,2 +44,8 @@ Headers["CACHE_CONTROL"] = "Cache-Control"; | ||
HeaderValues["APPLICATION_JSON"] = "application/json"; | ||
HeaderValues["TEXT_HTML"] = "text/html"; | ||
HeaderValues["MULTIPART_FORMDATA"] = "multipart/form-data"; | ||
HeaderValues["IMAGE_JPG"] = "image/jpg"; | ||
HeaderValues["IMAGE_PNG"] = "image/png"; | ||
HeaderValues["AUDIO_MPEG"] = "audio/mpeg"; | ||
HeaderValues["VIDEO_MP4"] = "video/mp4"; | ||
})(HeaderValues = exports.HeaderValues || (exports.HeaderValues = {})); |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
var express = require("express"); | ||
var RoutingHttpHandler_1 = require("../../main/core/RoutingHttpHandler"); | ||
var Routing_1 = require("../../main/core/Routing"); | ||
var Response_1 = require("../../main/core/Response"); | ||
var ExpressServer_1 = require("../../main/core/ExpressServer"); | ||
var Client_1 = require("../../main/core/Client"); | ||
var ExpressServer_1 = require("../../main/servers/ExpressServer"); | ||
var Client_1 = require("../../main/client/Client"); | ||
var Request_1 = require("../../main/core/Request"); | ||
@@ -22,3 +22,3 @@ var Body_1 = require("../../main/core/Body"); | ||
var baseUrl = "http://localhost:3001"; | ||
var server = RoutingHttpHandler_1.getTo("/", function (req) { | ||
var server = Routing_1.getTo("/", function (req) { | ||
var query = req.getQuery("tomQuery"); | ||
@@ -25,0 +25,0 @@ return new Promise(function (resolve) { |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
var RoutingHttpHandler_1 = require("../../main/core/RoutingHttpHandler"); | ||
var Routing_1 = require("../../main/core/Routing"); | ||
var Response_1 = require("../../main/core/Response"); | ||
@@ -10,3 +10,3 @@ var Request_1 = require("../../main/core/Request"); | ||
it("upgrade to https", function () { | ||
return RoutingHttpHandler_1.routes("GET", "/", function (req) { | ||
return Routing_1.routes("GET", "/", function (req) { | ||
return new Promise(function (resolve) { return resolve(new Response_1.Response(200, req.uri.protocol)); }); | ||
@@ -21,3 +21,3 @@ }) | ||
it("timing filter", function () { | ||
return RoutingHttpHandler_1.routes("GET", "/", function (req) { | ||
return Routing_1.routes("GET", "/", function (req) { | ||
return new Promise(function (resolve) { return resolve(new Response_1.Response(200, "OK")); }); | ||
@@ -41,3 +41,3 @@ }) | ||
var logger = new memoryLogger(); | ||
return RoutingHttpHandler_1.routes("GET", "/", function (req) { | ||
return Routing_1.routes("GET", "/", function (req) { | ||
return new Promise(function (resolve) { return resolve(new Response_1.Response(200, "OK")); }); | ||
@@ -44,0 +44,0 @@ }) |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
var RoutingHttpHandler_1 = require("../../main/core/RoutingHttpHandler"); | ||
var Routing_1 = require("../../main/core/Routing"); | ||
var Response_1 = require("../../main/core/Response"); | ||
var KoaServer_1 = require("../../main/core/KoaServer"); | ||
var Client_1 = require("../../main/core/Client"); | ||
var KoaServer_1 = require("../../main/servers/KoaServer"); | ||
var Client_1 = require("../../main/client/Client"); | ||
var Request_1 = require("../../main/core/Request"); | ||
@@ -20,3 +20,3 @@ var Body_1 = require("../../main/core/Body"); | ||
var baseUrl = "http://localhost:3002"; | ||
var server = RoutingHttpHandler_1.getTo("/", function (req) { | ||
var server = Routing_1.getTo("/", function (req) { | ||
var query = req.getQuery("tomQuery"); | ||
@@ -23,0 +23,0 @@ return new Promise(function (resolve) { |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
var RoutingHttpHandler_1 = require("../../main/core/RoutingHttpHandler"); | ||
var Routing_1 = require("../../main/core/Routing"); | ||
var Request_1 = require("../../main/core/Request"); | ||
@@ -8,7 +8,7 @@ var Response_1 = require("../../main/core/Response"); | ||
var assert_1 = require("assert"); | ||
var Client_1 = require("../../main/core/Client"); | ||
var NativeServer_1 = require("../../main/core/NativeServer"); | ||
var Client_1 = require("../../main/client/Client"); | ||
var NativeServer_1 = require("../../main/servers/NativeServer"); | ||
describe("native node over the wire", function () { | ||
var baseUrl = "http://localhost:3000"; | ||
var server = RoutingHttpHandler_1.getTo("/", function (req) { | ||
var server = Routing_1.getTo("/", function (req) { | ||
var query = req.getQuery("tomQuery"); | ||
@@ -15,0 +15,0 @@ return new Promise(function (resolve) { |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
var assert_1 = require("assert"); | ||
var RoutingHttpHandler_1 = require("../../main/core/RoutingHttpHandler"); | ||
var Routing_1 = require("../../main/core/Routing"); | ||
var Response_1 = require("../../main/core/Response"); | ||
@@ -10,3 +10,3 @@ var Body_1 = require("../../main/core/Body"); | ||
it("takes request and gives response", function () { | ||
return RoutingHttpHandler_1.getTo("/test", function (req) { | ||
return Routing_1.getTo("/test", function (req) { | ||
return Promise.resolve(new Response_1.Response(200, req.body)); | ||
@@ -18,3 +18,3 @@ }) | ||
it("nests handlers", function () { | ||
return RoutingHttpHandler_1.getTo("/test", function () { | ||
return Routing_1.getTo("/test", function () { | ||
return Promise.resolve(new Response_1.Response(200)); | ||
@@ -29,3 +29,3 @@ }) | ||
it("add a filter", function () { | ||
return RoutingHttpHandler_1.getTo("/test", function () { | ||
return Routing_1.getTo("/test", function () { | ||
return Promise.resolve(new Response_1.Response(200)); | ||
@@ -42,3 +42,3 @@ }) | ||
it("chains filters", function () { | ||
return RoutingHttpHandler_1.getTo("/test", function () { | ||
return Routing_1.getTo("/test", function () { | ||
return Promise.resolve(new Response_1.Response(200)); | ||
@@ -63,3 +63,3 @@ }) | ||
it("chains filters and handlers", function () { | ||
return RoutingHttpHandler_1.getTo("/test", function () { | ||
return Routing_1.getTo("/test", function () { | ||
return Promise.resolve(new Response_1.Response(200)); | ||
@@ -88,6 +88,6 @@ }) | ||
it("recursively defining routes", function () { | ||
var nested = RoutingHttpHandler_1.getTo("/nested", function () { | ||
var nested = Routing_1.getTo("/nested", function () { | ||
return Promise.resolve(new Response_1.Response(200).setBody("hi there deeply.")); | ||
}); | ||
return RoutingHttpHandler_1.getTo("/", function () { | ||
return Routing_1.getTo("/", function () { | ||
return Promise.resolve(new Response_1.Response(200)); | ||
@@ -100,3 +100,3 @@ }) | ||
it("matches path params only if specified a capture in route", function () { | ||
return RoutingHttpHandler_1.getTo("/family", function () { | ||
return Routing_1.getTo("/family", function () { | ||
return Promise.resolve(new Response_1.Response(200, new Body_1.Body("losh,bosh,tosh"))); | ||
@@ -108,3 +108,3 @@ }) | ||
it("extracts path param", function () { | ||
return RoutingHttpHandler_1.getTo("/{name}/test", function (req) { | ||
return Routing_1.getTo("/{name}/test", function (req) { | ||
return Promise.resolve(new Response_1.Response(200, new Body_1.Body(req.pathParams["name"]))); | ||
@@ -116,3 +116,3 @@ }) | ||
it("extracts multiple path params", function () { | ||
return RoutingHttpHandler_1.getTo("/{name}/test/{age}/bob/{personality}/fred", function (req) { | ||
return Routing_1.getTo("/{name}/test/{age}/bob/{personality}/fred", function (req) { | ||
return new Promise(function (resolve) { return resolve(new Response_1.Response(200, new Body_1.Body(req.pathParams["name"] + ", " + req.pathParams["age"] + ", " + req.pathParams["personality"]))); }); | ||
@@ -129,3 +129,3 @@ }) | ||
it("extracts query params", function () { | ||
return RoutingHttpHandler_1.getTo("/test", function (req) { | ||
return Routing_1.getTo("/test", function (req) { | ||
var queries = [ | ||
@@ -142,3 +142,3 @@ req.getQuery("tosh"), | ||
it("unknown route returns a 404", function () { | ||
return RoutingHttpHandler_1.getTo("/", function () { | ||
return Routing_1.getTo("/", function () { | ||
return Promise.resolve(new Response_1.Response(200, new Body_1.Body("hello, world!"))); | ||
@@ -150,3 +150,3 @@ }) | ||
it("custom 404s using filters", function () { | ||
return RoutingHttpHandler_1.getTo("/", function () { | ||
return Routing_1.getTo("/", function () { | ||
return Promise.resolve(new Response_1.Response(200, new Body_1.Body("hello, world!"))); | ||
@@ -174,3 +174,3 @@ }) | ||
it("ordering - filters apply in order they are declared", function () { | ||
return RoutingHttpHandler_1.getTo("/", function () { | ||
return Routing_1.getTo("/", function () { | ||
return Promise.resolve(new Response_1.Response(200, new Body_1.Body("hello, world!"))); | ||
@@ -186,3 +186,3 @@ }).withFilter(function (handler) { return function (req) { | ||
it("can add stuff to request using filters", function () { | ||
return RoutingHttpHandler_1.getTo("/", function (req) { | ||
return Routing_1.getTo("/", function (req) { | ||
return Promise.resolve(new Response_1.Response(200, new Body_1.Body(req.getHeader("pre-filter") || "hello, world!"))); | ||
@@ -196,3 +196,3 @@ }).withFilter(function (handler) { return function (req) { | ||
it("exact match handler", function () { | ||
return RoutingHttpHandler_1.getTo("/", function () { | ||
return Routing_1.getTo("/", function () { | ||
return Promise.resolve(new Response_1.Response(200, new Body_1.Body("root"))); | ||
@@ -211,3 +211,3 @@ }).withHandler("/family", "GET", function () { | ||
var friends = []; | ||
var routes = RoutingHttpHandler_1.getTo("/", function () { | ||
var routes = Routing_1.getTo("/", function () { | ||
return Promise.resolve(new Response_1.Response(200, new Body_1.Body("root"))); | ||
@@ -232,3 +232,3 @@ }) | ||
it("extract form params", function () { | ||
return RoutingHttpHandler_1.postTo("/family", function (req) { | ||
return Routing_1.postTo("/family", function (req) { | ||
return Promise.resolve(new Response_1.Response(200, new Body_1.Body(req.form))); | ||
@@ -242,3 +242,3 @@ }) | ||
it("matches method by regex", function () { | ||
return RoutingHttpHandler_1.routes(".*", "/", function () { return Promise.resolve(new Response_1.Response(200, "matched")); }) | ||
return Routing_1.routes(".*", "/", function () { return Promise.resolve(new Response_1.Response(200, "matched")); }) | ||
.match(new Request_1.Request("GET", "/")) | ||
@@ -250,3 +250,3 @@ .then(function (response) { | ||
it("matches path by regex", function () { | ||
return RoutingHttpHandler_1.routes(".*", ".*", function () { return Promise.resolve(new Response_1.Response(200, "matched")); }) | ||
return Routing_1.routes(".*", ".*", function () { return Promise.resolve(new Response_1.Response(200, "matched")); }) | ||
.match(new Request_1.Request("GET", "/any/path/matches")) | ||
@@ -253,0 +253,0 @@ .then(function (response) { |
36
index.ts
@@ -1,32 +0,16 @@ | ||
import {getTo, routes} from "./src/main/core/RoutingHttpHandler"; | ||
import {HttpClient} from "./src/main/core/Client"; | ||
import {Request} from "./src/main/core/Request"; | ||
import {Response} from "./src/main/core/Response"; | ||
import {NativeServer} from "./src/main/core/NativeServer"; | ||
export * from "./dist/main/core/RoutingHttpHandler"; | ||
export * from "./dist/main/core/Routing"; | ||
export * from "./dist/main/core/Request"; | ||
export * from "./dist/main/core/Response"; | ||
export * from "./dist/main/core/Server"; | ||
export * from "./dist/main/core/Client"; | ||
export * from "./dist/main/core/Body"; | ||
export * from "./dist/main/core/Uri"; | ||
export * from "./dist/main/core/Headers"; | ||
export * from "./dist/main/core/HttpMessage"; | ||
export * from "./dist/main/core/Methods"; | ||
export * from "./dist/main/core/Filters"; | ||
export * from "./dist/main/core/Status"; | ||
const upstream = routes(".*", ".*", (req: Request) => { | ||
let response = new Response(200, req.headers); | ||
console.log("*** UPSTREAM RESPONSE ***"); | ||
console.log(response); | ||
return Promise.resolve(response); | ||
}) | ||
.asServer(new NativeServer(3001)) | ||
.start(); | ||
export * from "./dist/main/servers/Server"; | ||
export * from "./dist/main/servers/ExpressServer"; | ||
export * from "./dist/main/servers/KoaServer"; | ||
const proxy = routes(".*", ".*", (req: Request) => { | ||
let rewrittenRequest = req.setUri("http://localhost:3001/") | ||
.setHeader("x-proxy", "header from proxy") | ||
.setHeader("host", req.uri.href); | ||
console.log("*** REWRITTEN REQUEST ***"); | ||
console.log(rewrittenRequest); | ||
return HttpClient(rewrittenRequest); | ||
}) | ||
.asServer() | ||
.start(); | ||
export * from "./dist/main/client/Client"; |
{ | ||
"name": "http4js", | ||
"version": "1.2.5", | ||
"version": "1.2.6", | ||
"description": "A lightweight HTTP toolkit", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
Sorry, the diff of this file is not supported yet
64
1940
222021