Tag: 请求

如何发送请求从node.js到另一台服务器(Java)?

我必须发送数据(json对象)到另一个web服务器(java)。 这是我的node.js代码 var express=require('express'); var app=express(); app.get('/',function(req,res) { var data = querystring.stringify({ username:"myname", password:" pass" }); var options = { host: 'www.javaserver.com', port: 8070, path: '/login', method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded', 'Content-Length': Buffer.byteLength(data) } }; var req = http.request(options, function(res) { res.setEncoding('utf8'); res.on('data', function (chunk) { console.log("body: " + chunk); }); }); req.write(data); req.end(); […]

将转发path请求节点到其他服务器

目前有一个网站运行一个节点服务器,处理所有的example.com请求,我创build了一个完全独立的wordpress博客上的一个单独的服务器(运行Apache),我想在像example.com/blog 172.23.23.23 IP地址。 WordPress的服务器不共享任何代码,甚至意识到除了自身之外的任何东西的存在 节点/快递以这种方式转发所有请求的最佳方式是什么? 另外A / CNAMElogging新的WordPress的服务器指向?

使用npm请求使用JSON发布

如何使用request npm模块执行以下操作? curl https://todoist.com/oauth/access_token \ -d client_id=0123456789abcdef \ -d client_secret=secret \ -d code=abcdef \ -d redirect_uri=https://example.com 我试过这样做: var body = JSON.stringify({ client_id: '0123456789abcdef', client_secret: 'secret', code: 'abcdef' }); var postBody = { url: 'https://todoist.com/oauth/access_token', body: body, headers: { 'Content-Type': 'application/x-www-form-urlencoded' } }; request.post(postBody, function(error, response, body) { … });

在Node.JS中使用async / await进行适当的请求

在我的程序中,我从另一个API模块进行async调用: var info = await api.MyRequest(value); 模块代码: var request = require("request") module.exports.MyRequest = async function MyRequest(value) { var options = { uri: "http://some_url", method: "GET", qs: { // Query string like ?key=value&… key : value }, json: true } try { var result = await request(options); return result; } catch (err) { console.error(err); } } […]

Mikeal的NodeJS请求在pipe道之前修改主体

我为NodeJS使用了mikeal的真棒请求模块。 我也用express来代理API的调用,以避免旧版浏览器的CORS问题: app.use(function(request, response, next) { var matches = request.url.match(/^\/API_ENDPOINT\/(.*)/), method = request.method.toLowerCase(), url; if (matches) { url = 'http://myapi.com' + matches[0]; return request.pipe(req[method](url)).pipe(response); } else { next(); } }); 有没有一种方法,我可以修改身体,然后再将request的响应传回来express ?

如何使用请求使用变换stream?

基本上,我想在发送到客户端之前使用转换stream来改变http响应,但是我的代码在下面会引发一个错误:[Error:write after end]。 http://nodejs.org/api/stream.html#stream_writable_end_chunk_encoding_callback上的文档说: 在调用end()之后调用write()会引发一个错误。 在这种情况下,如何防止write()在end()之后被调用? var request = require('request'); var Transform = require('stream').Transform; var http = require('http'); var parser = new Transform(); parser._transform = function(data, encoding, done) { console.log(data); this.push(data); done(); }; parser.on('error', function(error) { console.log(error); }); http.createServer(function (req, resp) { var dest = 'http://stackoverflow.com/'; var x = request({url:dest, encoding:null}) x.pipe(parser).pipe(resp) }).listen(8000);

如何使用node.js启动/停止请求stream?

我有 return request({ method: "POST", url: response.stream.url, json: true, forever: true, body: { sessionid: response.stream.sessionid, symbols: symbolParams } }).on("data", onData) 无论何时,这都会给我提供数据。 但是,如果我想停止在那个stream上听,怎么办?

为chai请求添加自定义的http头

我正在使用node.js构build应用程序,并使用mocha + chai进行testing。 有没有一种方法可以将自定义标题添加到我的GET和POST chai请求? 例如,我想要的东西像(半伪代码): chai.request(server) .get('/api/car/' + data.car_id) .headers({'some_custom_attribute':'some_value'}) .end(function(err, res) { //do something }); 同样的post: chai.request(server) .post('/api/car/') .headers({'some_custom_attribute':'some_value'}) .send({car_id: 'some_car_id'}) .end(function(err, res) { //do something }); 有人可以帮忙吗? 提前致谢!

如何pipe理node.js请求连接池?

我正在使用node.js 请求模块发出多个请求。 这个模块是否有连接池? 我们可以pipe理这个连接池吗? 我们可以closures打开的连接? 我们如何处理socket hang up error

Nodejs错误:getaddrinfo ENOTFOUND&EADDRINFO

我正在使用Request模块来获取HTML页面,它工作的很好,但一段时间后,我得到错误ENOTFOUND和EADDRINFO的一些请求。 在网上看了一下之后,我发现了一些类似的问题( #699 , #5488 , #697 ),而我的理解是,我可能不会消费一些(或全部)响应,套接字池的最大大小。 我不确定所有这些,但我正在考虑增加globalAgent.maxSockets (100?),并始终在请求callback开始时调用response.resume()来消费响应。 这有什么意义吗? 还是我的方式脱轨? 我查看了Node的代码,试图了解resume()是什么,但我不确定是否find了正确的函数( #L698 )。 谢谢你的帮助。