私はNode.jsので作られたこのAPIは、これは、それだけでクレートポストシンプルでありますノード、JSとjQueryではないローカルホスト上で作業
var express = require('express');
var mongoose = require('mongoose');
var bodyParser = require('body-parser');
var app = express();
var Posts = require('./models/posts');
mongoose.connect('mongodb://localhost/api', function(err) {
if(err) {
console.log("Error with mongodb: " + err);
}
});
app.use(bodyParser());
var port = process.env.PORT || 3000;
var router = express.Router();
router.get('/', function(req, res){
res.json({message: 'It\'s working'});
});
router.route('/posts')
.get(function(req, res) {
Posts.find(function(err, data) {
if(err) {
res.send(err);
}
res.json(data);
});
})
.post(function(req, res) {
var posts = new Posts();
posts.title = req.body.title;
posts.description = req.body.description;
posts.content = req.body.content;
posts.save(function(err) {
if(err) {
res.send(err);
}
res.json({message: "Post saved!"});
});
});
router.route('/posts/:id')
.get(function(req, res){
Posts.findById(req.param.id, function(err, data) {
if(err) {
res.send(err);
}
res.json(data);
});
})
.put(function(req, res) {
Posts.findById(req.params.id, function(err, data) {
if(err) {
res.send(err);
}
data.nome = req.body.nome;
data.description = req.body.description;
data.content = req.body.content;
data.date = Date.now;
data.save(function(err) {
if(err) {
res.send(err);
}
res.json({message: 'Post updated!'});
});
});
})
.delete(function(req, res) {
Posts.remove({_id: req.params.id}, function(err, data) {
if(err) {
res.send(err);
}
res.json({message: 'Post deleted!'});
});
});
app.use('/api', router);
app.listen(port, function() {
console.log("Server running on: " + port);
});
そして、私は
$.ajax({
url: 'http://localhost:3000/api/posts/',
type: "GET",
dataType: 'jsonp',
success: function(returnit) {
$.each(returnit.posts, function() {
var post = this;
$('<p>').text(post.title).appendTo('.blog--area');
});
}
});
jQueryの
にこのコードを持っています
誰かが私に何が起こっているのか、なぜ起こっているのか説明できますか?私はJavaScript上で新しく、フレームワークです。コンソールで確認すると、何も言いません。
可能であれば、いくつかのヒントを教えてください。おかげで...
編集
私は、エラーを言及するのを忘れて、それがポストを示していません。
返されるエラーは何ですか? – FiringSquadWitness
投稿を表示しません – joaomarcuslf
デバッグには、コードに 'console.logs'を追加してみてください。例えば。 'Post.find(function(err、data){' 'の後に' console.log( "data from db"データ)をコールバック関数に追加してください。 : 'console.log(" received data "、returnIt)'など。少なくともこのようにすれば、問題を切り分けることができます。 – Anastasia