我有一个非常简单的服务器在环回3下运行并再次看到这个问题:https://github.com/strongloop/loopback-component-storage/issues/9
由于要点和示例不再有效,我想重新打开这个问题。 我创建了一个非常简单的API模板化服务器,并添加了以下代码:
module.exports = function (File) {
File.upload = function (ctx, options, cb) {
if (!options) options = {};
ctx.req.params.container = 'common';
console.log("DO");
File.app.models.Storage.upload(ctx.req, ctx.result, options, function (err, fileObj) {
console.log("FILE");
cb(fileObj);
});
};
File.remoteMethod(
'upload',
{
description: 'Uploads a file',
accepts: [
{arg: 'ctx', type: 'object', http: {source: 'context'}},
{arg: 'options', type: 'object', http: {source: 'query'}}
],
returns: {
arg: 'fileObject', type: 'object', root: true
},
http: {verb: 'post'}
}
);
};
现在的问题是,在通过POSTMAN发布到上传功能时,我在控制台中看到以下行为:
DO
Error: Request aborted
at IncomingMessage.<anonymous> (...../server/node_modules/formidable/lib/incoming_form.js:120:19)
at emitNone (events.js:86:13)
at IncomingMessage.emit (events.js:188:7)
at abortIncoming (_http_server.js:383:9)
at socketOnClose (_http_server.js:377:3)
at emitOne (events.js:101:20)
at Socket.emit (events.js:191:7)
at TCP._handle.close [as _onclose] (net.js:504:12)
FILE
Postman返回一个空的回复......
在这一步,我作为初学者完全迷失了!
我的错是什么?
任何输入的Thx
答案 0 :(得分:2)
https://github.com/strongloop/loopback-component-storage/issues/86
只需使用标题“Accept”,其值为“multipart / form-data”,而不是设置“Content-type”。这对Postier来说很有用。