通常我们常用的请求方法只有GET、POST、PUT和DELETE,所以在此只介绍这四种和文件上传的代理方式

在此我们使用request.js第三方模块实现

GET(DELETE同GET,将request方法改为DELETE即可)

    const request = require('request');
const url = require('url'); test: function (req, res, next) {
let curl = url.parse(req.url);
let search= curl.search;
curl = "http:/localhost:8080/api/get"+search; try {
req.pipe(request({
method: 'GET',
uri: curl
})).pipe(res); } catch (e) {
next(e);
}
}

  

POST(PUT同POST,将request方法改为put即可)

    const request = require('request');
const url = require('url'); test: function (req, res, next) {
let curl= url.parse(req.url);
let search= curl.search;
curl = "http://localhost:8080/api/post"+search; let body = req.body;
try {
request.post({
uri: curl,
form: body
}).pipe(res); } catch (e) {
next(e);
}
}

  

代理文件上传

    const request = require('request');
const url = require('url'); upload: function (req, res, next) {
let curl= url.parse(req.url);
let search= curl.search;
curl = "http://localhost:8080/api/upload"+search; try {
req.pipe(request({
method: 'POST',
uri: curl
})).pipe(res); } catch (e) {
next(e);
}
}

  

    

nodejs实现请求代理的更多相关文章

  1. vue-cli 3.0之跨域请求代理配置及axios路径配置

    vue-cli 3.0之跨域请求代理配置及axios路径配置 问题:在前后端分离的跨域请求中,报跨域问题 配置: vue.config.js: module.exports = { runtimeCo ...

  2. nodejs request-promise 请求返回中文乱码

    nodejs request-promise 请求返回中文乱码 解决方法: 具体步骤如下: 1. 引用iconv-lite 进行转码. 2. 请求时要写参数:encoding:null 3. 对bod ...

  3. vue.js学习之 跨域请求代理与axios传参

    vue.js学习之 跨域请求代理与axios传参 一:跨域请求代理 1:打开config/index.js module.exports{ dev: { } } 在这里面找到proxyTable{}, ...

  4. HTTP请求代理类(GET 、 POST 、PUT 、DELETE)

    package com.jm.http.tools; import java.io.BufferedReader; import java.io.IOException; import java.io ...

  5. vue-cli构建的项目中请求代理与项目打包

    vue-cli构建的项目中,生产模式下的打包路径.与生产模式下的请求代理简单示意

  6. 使用nodejs中httpProxy代理时候出现404异常

    在公司中使用nodejs构建代理服务器实现前后台分离,代码不能拿出来,然后出现httpProxy代理资源的时候老是出现404.明明被代理的接口是存在的.代码大概如下: var http = requi ...

  7. 使用Nodejs进行反向代理

    在实际工程开发中,会有前后端分离的需求. 为了平滑的完成前端请求到后端各个独立服务,需要一个中间件实现请求转发的功能,利用Nginx可以实现,在这里,使用nodejs实现一个反向代理服务器.   实际 ...

  8. js设计模式系列之(一)请节约你的请求-代理模式

    What’s the proxy pattern? 代理模式其实就是将违反单一性原则的类给抽离出来,尽量满足开放和封闭的原则. 相当于一个类的行为只是一种,但是你可以给这个类添加额外的行为.比如: 一 ...

  9. nodejs 设置网络代理

    在使用nodejs的过程中,加入使用代理上网,那么安装组件会失败,此时配置代理即可,命令如下: [root@oracle ~]#npm config set proxy=http://10.101.1 ...

随机推荐

  1. Laravel Tinker 使用笔记

    我们知道,Laravel Tinker 提供了命令行式的交互调试途径.使用极其方便直观. 使用: #php artisan tinker 要点: 命令要在一行上输入完成,回车执行.>>&g ...

  2. struts2值栈ValueStack中都有哪些东西?

    com.opensymphony.xwork2.dispatcher.HttpServletRequest application com.opensymphony.xwork2.dispatcher ...

  3. 抓包之网络分析器- Wiresshark

    https://www.wireshark.org/ Wireshark(前称Ethereal)是一个网络封包分析软件.网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料.Wi ...

  4. Unsorted, maximum ==> sorted

    https://github.com/Premiumlab/Python-for-Algorithms--Data-Structures--and-Interviews/blob/master/Moc ...

  5. 第九章:叹词(L'interjection )

    ➊叹词的使用词类 .拟声词.如:    Ah !啊!呀!哎!      Hein  !嗯!呣!哎!    Paf  !啪!叭!             Pouf  !扑通(重物坠地声)    Euh ...

  6. C++之类和对象课后习题1

    建立一个对象数组,内放5个学生的(学号,成绩),设立一个函数max,用指向对象的指针作函数参数,在max函数中找出5个学生的最高成绩者,并输出其学号. #include<iostream> ...

  7. (最大上升子序列) Super Jumping! Jumping! Jumping! -- hdu -- 1087

    http://acm.hdu.edu.cn/showproblem.php?pid=1087   Super Jumping! Jumping! Jumping! Time Limit:1000MS  ...

  8. hdu 1300 Deck

    题目 分析:对于n张卡片的最佳摆法,我们只需要在n-1张卡片的摆法下面加一张边缘与桌檐重合的卡片,并将所有卡片一起向桌檐外移动.对于一种最佳摆法,其中心一定在桌檐上,所以一定符合杠杆原理,支点是桌檐. ...

  9. POJ1511来回最短路

    POJ1511 问你从1到其它点得所有最短路之和  与  其他点到1得所有最短路之和 得总和 思路很明确就是两次最短路,翻转一次地图就好了 一开始就是两次spfa之间处理好数据得更新管理就好 vect ...

  10. 虚拟化之Xen简介

    1>相关知识简介: 1>常用的磁盘IO调度器: CFQ:完全公平队列算法: deadline:最后期限算法: anticipatory:顺序读写队列算法/预期算法: NOOP:no  op ...