nodejs实现请求代理

 

 

通常我们常用的请求方法只有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);
        }
    }

  

    

转载于:https://www.cnblogs.com/zhen-rh/p/7474542.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值