我使用gridFs
在我的数据库中创建了一个文件。该文件如下:
var mongoose = require('mongoose');
var fs = require('fs');
var Grid = require('gridfs-stream');
Grid.mongo=mongoose.mongo;
//establish mongoDB connection
mongoose.Promise = global.Promise;
var conn = mongoose.createConnection('mongodb://localhost:27017/aHolyBoly');
conn.once('open',function(){
var gfs = Grid(conn.db);
// var db = new mongo.Db('aHolyBoly', new mongo.Server("127.0.0.1", 27017));
//var gfs = Grid(db, mongo);
var writeStream = gfs.createWriteStream({
filename:'song1.mp3'
});
fs.createReadStream('../list/hero.mp3').pipe(writeStream);
writeStream.on('close',function(file){
console.log(file.filename +'Written to db');
});
});
现在,我想使用express和node创建一个API,这样我就可以使用Ionic2
和Angular2
将我的Backend与前端连接起来。
所以我看到了这个教程:
https://www.joshmorony.com/building-a-review-app-with-ionic-2-mongodb-node/
现在在本教程中,HTTP动词GET
,POST
等用于进行API调用,然后将其用作提供程序。这是继续我的项目的方法吗?如果是这样,那么我有一些问题如下:
在上面提到的链接中有 server.js 文件。在该文件中,代码为mongoose.connect('mongodb://localhost/reviewking');
为什么如果已经在我的文件 storeAudio.js 中使用过,又会再次使用它?
其次,是否应使用gridFs
以类似方式使用HTTP谓词?
注意:我首次使用所有内容(ionic2
和angular2
除外)。如果需要提供更多输入,请与我们联系。如果在这篇文章中找到错误,我很抱歉。
答案 0 :(得分:0)
以下是我在离子3应用程序中的一个提供商的示例函数,该应用程序正在调用我的API:
getClients(){
let headers = new Headers();
headers.append('Authorization', this.authService.token);
this.http.get('https://ptassist.herokuapp.com/api/auth/' + this.authService.user._id, {headers: headers})
.map(res => res.json())
.subscribe(data => {
this.clientlist = data;
console.log(this.clientlist);
}, (err) => {
console.log(err);
});
}
至于你关于mongoose连接的其他问题,我不完全确定,你是否在github等上编写代码?