Articles of requestjs

request.js失败,其中CURL通过授权标头成功获取GET请求

我可以使用curl的Authorization头进行GET请求,但不能使用Node.js中的request或https进行request 。 服务器使用curl返回状态200,使用request或https返回500。 来自request或https request可能与curl不同? 服务器如何以不同的方式读取它们? 以下cURL从命令行成功执行: curl -H "Authorization: Bearer abc123def456" https://api.domain.com/path/to/resource 但同样的请求失败,在Node中的request.js var options = { type: 'get', url: "https://api.domain.com/path/to/resource", headers: { "Authorization": " Bearer abc123def456" } } request(options, function (err, response, body) { assert.equal(response.statusCode, 200) ; // 500 internal error }) 使用auth选项,request.js也失败了: var options = { type: 'get', url: "https://api.domain.com/path/to/resource", auth: { […]

即使已经解决,承诺也会挂起

我正在使用request-promise模块来检查网站是否与代理工作。 我试图find代理速度足以在5秒内回答。 因此,如果请求在5秒内没有超时,我只添加对象。 对于某些代理,即使承诺解决,节点脚本暂停一段时间。 我找不到拖延的原因。 我看到它打印Done但它挂起。 1分10秒后,脚本退出。 这是挂起由于我的代码,或操作系统问题打开套接字等? const rp = require('request-promise'); const testProxies = [ { "ipAddress": "80.241.219.83", "port": 3128, }, { "ipAddress": "45.55.27.246", "port": 80 }, { "ipAddress": "144.217.197.71", "port": 8080, }, { "ipAddress": "104.131.168.255", "port": 80, }, ]; function CheckSites(sitesArray,site) { let ps = []; for (let i = 0; i < […]

Node.JS请求 – 无效的URI“/”

我在我的应用程序中使用request通过使用客户端身份validation的HTTPS发送POST请求。 请求总是抛出一个错误Error: Invalid URI "/" ,我无法做任何事情来解决它。 我已经尝试使用url.parse而不是传递一个string,但它仍然是相同的。 request.post({ uri: 'https://localhost:5000', key: credentials.key, ca: credentials.ca, cert: credentials.cert, passphrase: credentials.passphrase, rejectUnauthorized: false }, { form: { data: payload }});

从nodejs请求到s3的stream响应

你如何使用请求下载一个文件的内容,并直接使用aws-sdk作为节点将其传输到s3? 下面的代码给我的Object #<Request> has no method 'read' ,这使得它看起来像请求不会返回一个可读的stream… var req = require('request'); var s3 = new AWS.S3({params: {Bucket: myBucket, Key: s3Key}}); var imageStream = req.get(url) .on('response', function (response) { if (200 == response.statusCode) { //imageStream should be read()able by now right? s3.upload({Body: imageStream, ACL: "public-read", CacheControl: 5184000}, function (err, data) { //2 months console.log(err,data); }); […]

在AJAX调用(使用ExpressJS)之后,通过EJS模板中的数组循环的正确方法是什么?

所以我试图循环通过一个http调用使用request模块/包使用我的内部API的对象数组。 到目前为止,我能够从API中获取数据,并在页面上显示完整的对象。 我想将其显示在我的页面上,并使用EJS模板系统进行循环。 我知道我可以使用AngularJS作为前端的东西,但我想看看我只能在服务器端使用多远。 所以下面是我的代码: server.js // Prepend /api to my apiRoutes app.use('/api', require('./app/api')); api.js var Report = require('./models/report'); var express = require('express'); var apiRoutes = express.Router(); apiRoutes.route('/reports', isLoggedIn) .get(function (req, res,next) { // use mongoose to get all reports in the database Report.find(function (err, reports) { // if there is an error retrieving, send […]