Tag:

Box或Google Drive作为nodejs webapp的存储

我正在开发一个需要上传一些媒体的nodejs中的webapp,并决定是否将Google Drive或Box用作存储我的应用程序的静态媒体。 两种解决scheme都使用oauth2进行身份validation,但是我无法理解如何将节点应用程序连接到单个帐户(存储位置必须是)。 问题是我找不到符合我的问题的例子。 我需要做什么来实现这个? 如果不可能,有什么好的云存储替代品可以提供免费空间? 我不想在生产环境之前支付服务费用

Nodejs:如何发送一个可读的stream到浏览器

如果我查询框REST API并获取可读的stream,处理它的最佳方法是什么? 你怎么把它发送到浏览器? (免责声明:我是新来的stream和缓冲区,所以这些代码是相当理论) 你可以在响应中传递readStream并让浏览器处理它吗? 还是你必须stream块大块缓冲区,然后发送缓冲区? export function getFileStream(req, res) { const fileId = req.params.fileId; console.log('fileId', fileId); req.sdk.files.getReadStream(fileId, null, (err, stream) => { if (err) { console.log('error', err); return res.status(500).send(err); } res.type('application/octet-stream'); console.log('stream', stream); return res.status(200).send(stream); }); } 会^^工作,或者你需要做一些事情: export function downloadFile(req, res) { const fileId = req.params.fileId; console.log('fileId', fileId); req.sdk.files.getReadStream(fileId, null, (err, stream) => […]

节点JS – 构造一个OAuth2请求

我试图构build一个OAuth2请求的框API。 他们给出的示例POST请求作为指导对我来说有点模糊,因为我最近学习了后端开发。 示例如下: POST /token Content-Type: application/x-www-form-urlencoded grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer& assertion=<JWT>& client_id=<client_id>& client_secret=<client_secret> 官方文档: https : //box-content.readme.io/docs/app-auth 我试图做到这一点的方式如下: var boxHeaders = { 'Content-Type': 'application/x-www-form-urlencoded' }; var boxOptions = { url: 'https://api.box.com/oauth2/token', method: 'POST', headers: boxHeaders, form: { 'grant_type': 'urn:ietf:params:oauth:grant-type:jwt-bearer', 'assertion': boxtoken, 'client_id': 'myclientid', 'client_secret': 'myclientsecret' } }; request.post(boxOptions, function(err, response, body) { console.log(body); }); 我得到以下错误: { "error":"invalid_request", […]