【问题标题】:Image Upload Ember JS and Sails JS图片上传 Ember JS 和 Sails JS
【发布时间】:2018-03-06 10:07:54
【问题描述】:

我正在尝试将图像从前端“Ember JS”上传到“Sails JS”,

我创建了一个名为“upload”的 API,并使用“skipper”和“gridfs”将图像上传到我的 Mongo 数据库中。

我也在使用“kitematic”虚拟服务器,奇怪的是我的代码在到达

req.file('file').upload({
  adapter : require('skipper-gridfs'),
  uri : 'mongodb://192.168.99.100:32769/admin/upload'
})

由于某种原因我得到了

Sending 500 ('server error') response:
{ err : 'connection to [192.168.99:27017] timed out' }

我在 Ember 中使用“ember-file-upload”,这是我的前端

模板.hbs

  {{#file-upload name="file"
            accept="image/*"
            multiple=true
            onfileadd=(action "uploadImage")}}
     <a id="upload-image" tabindex=0>Add an Image.</a>
  {{/file-upload}}

controller.js

 uploadImage(file) {
  console.log(file);
  file.upload('http://localhost:1338/uploads/file').then(response => {
    console.log(response);
    this.get('model.files').pushObject({ path : response.body.message });
  })
}

Now Sails js 上传控制器

module.exports = { 
    file : function(req, res) {
        console.log(req.body);
        req.file('file').upload({
        adapter : require('skipper-gridfs'),
        uri : 'mongodb://192.168.99.100:32769/admin/upload'
        }, function(err, uploadedFiles) {
        if (err) return res.negotiate(err);
        console.log(err);
        return res.json({ message : uploadedFiles[0].fd.split('assets/')[1] })
        })
    }
};

【问题讨论】:

    标签: javascript ember.js sails.js


    【解决方案1】:

    首先,看看你得到的错误:

    Sending 500 ('server error') response:
    { err : 'connection to [192.168.99:27017] timed out' }
    

    你有一个到 192.168.99:27017 的连接,这与你设置的完全不同:

    mongodb://192.168.99.100:32769/admin/upload
    

    首先,我认为您的 URI 不正确 - 这个 /admin/upload 对我来说似乎不正确。试试 /admin.upload,或者完全省略,比如:

    mongodb://192.168.99.100:32769
    

    还要确保您可以在没有用户名和密码的情况下连接到您的 mongoDB。

    参考网址:http://api.mongodb.com/java/current/com/mongodb/MongoClientURI.html

    【讨论】:

    • 抱歉回复晚了,但这是真正的答案,我的错误是我写了“admin/upload”正确的语法是“admin.uploads”,因为我将复数设置为 true,但现在我似乎收到一个新错误“MongoError: error processing query: ns=admin.uploads.chunksTree: $and files_id $eq ObjectId('5a9ebd442fcb57a306ed1105') n $gte 0 Sort: { files_id: 1, n: 1 } Proj: { } 没有查询解决方案”任何关于它的想法可能会有所帮助..再次感谢
    • 签出这个链接github.com/willhuang85/skipper-gridfs/issues/14顺便说一句,我从来没有用过mongoDB来保存文件,所以不能再帮忙了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-26
    • 2015-10-25
    • 1970-01-01
    • 2016-06-13
    • 2016-05-19
    • 2015-05-17
    • 1970-01-01
    相关资源
    最近更新 更多