Download ADOOR_ACE/node_modules/express-http-proxy/test/middlewareCompatibility.js from thisisAce/adoor-store: direct link, hf CLI and curl.
- Browser
- Download file 2.71 kB
-
https://huggingface.co/thisisAce/adoor-store/resolve/main/ADOOR_ACE/node_modules/express-http-proxy/test/middlewareCompatibility.js
- Command line
-
hf download hf://thisisAce/adoor-store/ADOOR_ACE/node_modules/express-http-proxy/test/middlewareCompatibility.js
-
curl -L -o middlewareCompatibility.js https://huggingface.co/thisisAce/adoor-store/resolve/main/ADOOR_ACE/node_modules/express-http-proxy/test/middlewareCompatibility.js
2.71 kB
| ; | |
| var assert = require('assert'); | |
| var express = require('express'); | |
| var request = require('supertest'); | |
| var bodyParser = require('body-parser'); | |
| var proxy = require('../'); | |
| var proxyTarget = require('../test/support/proxyTarget'); | |
| var proxyRouteFn = [{ | |
| method: 'post', | |
| path: '/poster', | |
| fn: function (req, res) { | |
| res.send(req.body); | |
| } | |
| }]; | |
| describe('middleware compatibility', function () { | |
| var proxyServer; | |
| beforeEach(function () { | |
| proxyServer = proxyTarget(12346, 100, proxyRouteFn); | |
| }); | |
| afterEach(function () { | |
| proxyServer.close(); | |
| }); | |
| it('should use req.body if defined', function (done) { | |
| var app = express(); | |
| // Simulate another middleware that puts req stream into the body | |
| app.use(function (req, res, next) { | |
| var received = []; | |
| req.on('data', function onData(chunk) { | |
| if (!chunk) { return; } | |
| received.push(chunk); | |
| }); | |
| req.on('end', function onEnd() { | |
| received = Buffer.concat(received).toString('utf8'); | |
| req.body = JSON.parse(received); | |
| req.body.foo = 1; | |
| next(); | |
| }); | |
| }); | |
| app.use(proxy('localhost:12346', { | |
| userResDecorator: function (rsp, data, req) { | |
| assert(req.body); | |
| assert.equal(req.body.foo, 1); | |
| assert.equal(req.body.mypost, 'hello'); | |
| return data; | |
| } | |
| })); | |
| request(app) | |
| .post('/poster') | |
| .send({ mypost: 'hello' }) | |
| .expect(function (res) { | |
| assert.equal(res.body.foo, 1); | |
| assert.equal(res.body.mypost, 'hello'); | |
| }) | |
| .end(done); | |
| }); | |
| it('should stringify req.body when it is a json body so it is written to proxy request', function (done) { | |
| var app = express(); | |
| app.use(bodyParser.json()); | |
| app.use(bodyParser.urlencoded({ | |
| extended: false | |
| })); | |
| app.use(proxy('localhost:12346')); | |
| request(app) | |
| .post('/poster') | |
| .send({ | |
| mypost: 'hello', | |
| doorknob: 'wrect' | |
| }) | |
| .expect(function (res) { | |
| assert.equal(res.body.doorknob, 'wrect'); | |
| assert.equal(res.body.mypost, 'hello'); | |
| }) | |
| .end(done); | |
| }); | |
| it('should convert req.body to a Buffer when reqAsBuffer is set', function (done) { | |
| var app = express(); | |
| app.use(bodyParser.json()); | |
| app.use(bodyParser.urlencoded({ | |
| extended: false | |
| })); | |
| app.use(proxy('localhost:12346', { | |
| reqAsBuffer: true | |
| })); | |
| request(app) | |
| .post('/poster') | |
| .send({ | |
| mypost: 'hello', | |
| doorknob: 'wrect' | |
| }) | |
| .expect(function (res) { | |
| assert.equal(res.body.doorknob, 'wrect'); | |
| assert.equal(res.body.mypost, 'hello'); | |
| }) | |
| .end(done); | |
| }); | |
| }); | |