Tag: api

在POST请求中使用node.js发送url编码的string

下午好, 我很难发送一个url编码的string到Stormpath /oauth/token API端点。 string是这样的: grant_type=password&username=<username>&password=<password> 使用Postman我通过select原始/文本选项,在请求正文中提供了一个与上面类似的string,从而成功地敲击了端点并获取了我想要的数据。 但是当我生成代码片段时,它看起来像这样: var request = require("request"); var options = { method: 'POST', url: 'https://<My DNS label>.apps.stormpath.io/oauth/token', headers: { 'postman-token': '<token>', 'cache-control': 'no-cache', 'content-type': 'application/x-www-form-urlencoded', host: '<My DNS label>.apps.stormpath.io', accept: 'application/json' }, form: false }; request(options, function (error, response, body) { if (error) throw new Error(error); console.log(body); }); 那串去哪了? 我想了解一些帮助,了解之间的断开知道我发送一个URL编码的string到API端点使用邮递员,而不是在邮政局生成的代码中看到它。 […]

Node.js Web App API调用导致ENOTFOUND

我创build了一个部署在Heroku上的Web应用程序,以及一个单独的节点服务器,可以对应用程序进行API调用。 当服务器发出请求时,我得到一个ENOTFOUND错误。 服务器请求: var gameOptions, body, gameReq; var currentOptions, currReq; // Create New Game ————————————————– // I have also tried hostname: "https://myChessApp.herokuapp.com/api" gameOptions = { hostname: 'myChessApp.herokuapp.com/api', path: '/games', headers: {'Content-Type' : 'application/json'}, method: 'POST' }; body = { fen :"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq – 0 1", pgn :"", createdAt : Date.now(), lastMoveAt : Date.now() } […]

使用GitLab API和Node.js下载GitLab存储库存档

我想从我的GitLab存储库下载(而不是克隆)档案,但是我得到这个错误 不正确的标题检查(Zlib._handle.onerror) 这是我的function: var fs = require('fs'); var url = require('url'); var https = require('https'); var path = require('path'); var targz = require('tar.gz'); function downloadFile(source, destination, name) { var options = { host: url.parse(source).host, port: 443, path: url.parse(source).pathname }; var file = fs.createWriteStream(destination + path.sep + name); https.get(options, function(res) { res.on('data', function(data) { file.write(data); }).on('end', […]

从没有API的网站获取数据/创build一个API

我需要从网站获取一些数据(用户将改变)。 然而,“守望先锋”(Overwatch Stats)没有“好”的API。 是否有可能在JavaScript(使用Node.js)通过HTML标签或sorting获取这些数据? 例如,这是源代码中的一行: <span class="summary-hero-name">McCree</span> 而且页面上显示的3个英雄每个都有class级summary-hero-name ,有什么办法可以参考这个数据吗?

API路由可用于任何令牌JWT + PASSPORT

我正在为我的应用程序构buildAPI并尝试使用护照jwt。 我可以注册新用户并login(取回令牌),但是当我使用邮递员检查“受保护的”路线时,我可以使用任何这样的“任何” Pasport.js const JwtStrategy = require('passport-jwt').Strategy, ExtractJwt = require('passport-jwt').ExtractJwt; const User = require('../api/models/user/userModel'),// load up the user model config = require('../config/database'); // get db config file module.exports = (passport)=> { let opts = {}; opts.jwtFromRequest = ExtractJwt.fromAuthHeader(); opts.secretOrKey = config.secret; passport.use(new JwtStrategy(opts, function(jwt_payload, done) { User.findOne({id: jwt_payload.id}, (err, user)=> { if (err) { return […]

无法在SailJS中创build版本化的API

首先,各种依赖的版本 Ubuntu – 15.04 NodeJS – 6.10.3 NPM – 3.10.10 帆 – 0.12.13 其次,这是我做的: 1.全球安装帆 2.在/var/www目录下运行命令sails new app 3.在api/controllers/v1创build一个文件UserController.js 4.在api/models创build一个User.js文件 UserController.js的代码 module.exports = { findOne: function(req, res) { return res.send("Hello World!!! User -> findOne"); }, login: function(req, res) { return res.send("Hello World!!! User -> login"); } } User.js代码 module.exports = {} 现在,当我使用sails lift启动服务器时,会发生以下情况: 浏览http:// localhost:1337 […]

节点(Express) – 通过api以快递方式发送pdf

我有一个API,为我在网站上的每笔付款生成发票。 另一方面,我有一个服务器来pipe理客户端。 客户要求时我需要取pdf。 我使用node / express和axios来pipe理http调用。 我设法使用以下代码从api发送pdf: function retrieveOneInvoice(req, res, next) { Order .findOne({_id: req.params.id, user: req.user.id}) .exec((err, order) => { if(err) { } else if (!order) { res.status(404).json({success: false, message: 'Order not found!'}); } else { const filename = order.invoice.path; let filepath = path.join(__dirname, '../../../invoices' ,filename); fs.readFile(filepath, function (err, data){ res.contentType("application/pdf"); res.end(data, 'binary'); }); […]

节点API Facebook的身份validation从移动

我发现很多关于如何使用NodeJS来设置FBlogin的教程,当Node响应页面的呈现,比如使用Passport和像PUG这样的引擎。 但是,API是不可知的前端微服务呢? 就像一个移动应用程序的API。 智能手机必须处理来自Facebook的授权让我的应用程序访问他的个人资料,那么我如何validation设备将发送回API接受或不login过程和访问受保护的路线的一堆数据? 我是否必须将我的API和应用程序(iOS / Android)注册到FB?

在S3 API上使用multer上传图片返回undefined

我正在构build一个用于上传图像并将其直接存储在S3存储上的API。 要做到这一点,我使用Postman.Method是POST和inputtypes是file.When我使用req.files或req.file时,我得到未定义。 Utils.js: getS3SignUrl: function( uri ){ return s3_client.getSignedUrl('putObject',{Bucket:config.aws.bucket,Key:uri,ACL :"public-read"}) } 在主文件中我使用这些: var bodyParser = require('body-parser'); var upload = require('multer')(); var utils = require('../service/utils.js'); router.post('/edit-profile', upload.single('newfile'), function(req, res) { console.log(req.file); }); }); 在控制台中,我得到了未定义,但是当我使用debugging器和req.body,我得到这个: 所以,似乎我有这个需求,但是我怎么能从这里拿走呢?

使用获取获取一个简单的string

所以我在我的API中有这个: router.get('/assetName', function(req, res, next){ //Get the token from the cookies var token = req.cookies.access_token; //Check it with the config secret if(jwt.verify(token, config.secret)){ //find from name in the request body User.find({_id: req.query.id}).then(function(users){ var z; var name = []; var assetHolder = users[0].assets; for(z=0; z < assetHolder.length; z++){ if(assetHolder[z]._id == req.query.vid){ name = assetHolder[z].name; } } […]