我正在为Android制作一个离子应用程序,今天我在cloud9上用mongodb实现了一个服务器端nodejs(express)Restful API。
但是当我触发对网址的http请求时,我不断收到标题中提到的错误:
这是我对离子的角度http请求(只是先测试):
app.controller('DashCtrl', function($scope, $http, $q) {
$http.get('https://[workspace]-[user].c9users.io/api/capture')
.then(function(result) {
console.log(result);
});
});
这是我工作区的图片:
我使用以下代码制作数据库: api.js
var Capture = require('../models/capture');
module.exports = function(router) {
router.get('/capture', function(req, res){
var capture = new Capture();
// capture.birdname = req.body.birdname;
// capture.place.city = req.place.body.city;
// capture.place.country = req.place.body.country;
capture.birdname = "Pigeon";
capture.save(function(err, data){
if(err)
throw err;
res.json(data);
});
});
router.get('/captures', function(req, res){
Customer.find({}, function(err, data){
res.json(data);
})
})
}
capture.js
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var captureSchema = mongoose.Schema({
birdname: String,
place: {
city: String,
country: String
}
});
module.exports = mongoose.model('Capture', captureSchema)
database.js
module.exports = {
'url': 'mongodb://' + process.env.IP
}
server.js
var express = require('express');
var app = express();
var mongoose = require('mongoose');
var configDB = require('./server/config/database.js');
mongoose.connect(configDB.url);
var api = express.Router();
require('./server/routes/api')(api);
app.use('/api', api);
app.listen(process.env.PORT, process.env.IP);
console.log('Listening on port ' + process.env.PORT)
任何人都知道为什么我会收到此错误以及我需要做些什么来解决这个问题? 我猜它与服务器有关,允许我向API发送请求,虽然我不知道如何实现它。
是否还有一种方法可以保护我的数据库(可能是API密钥)以及如何实现它?
提前致谢