栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

用express.js代理

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

用express.js代理

您想用来

http.request
创建与远程API类似的请求并返回其响应。

像这样:

const http = require('http');// or use import http from 'http';app.post('/api/BLABLA', (oreq, ores) => {  const options = {    // host to forward to    host: 'www.google.com',    // port to forward to    port: 80,    // path to forward to    path: '/api/BLABLA',    // request method    method: 'POST',    // headers to send    headers: oreq.headers,  };  const creq = http    .request(options, pres => {      // set encoding      pres.setEncoding('utf8');      // set http status pre based on proxied response      ores.writeHead(pres.statusCode);      // wait for data      pres.on('data', chunk => {        ores.write(chunk);      });      pres.on('close', () => {        // closed, let's end client request as well        ores.end();      });      pres.on('end', () => {        // finished, let's finish client request as well        ores.end();      });    })    .on('error', e => {      // we got an error      console.log(e.message);      try {        // attempt to set error message and http status        ores.writeHead(500);        ores.write(e.message);      } catch (e) {        // ignore      }      ores.end();    });  creq.end();});

注意:我还没有真正尝试过上面的方法,因此它可能包含解析错误,希望这会提示您如何使其工作。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/427025.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号