流星を使ったシンプルなAPIを作りたいです。
www.myapp.com/artist/idのようなURLが、サーバーで行った作業のJSON応答を返すようにします。
流星(そしておそらくバックボーン)を使用してこれを行うための最良の方法がわかりません。
Meteor.http.get( "url")を使用することはわかっていますが、APIのルートをどのように定義する必要があるのかよくわかりません。
または、別の環境でAPIを作成してから、それを呼び出すのが最善でしょうか?
流星を使ったシンプルなAPIを作りたいです。
www.myapp.com/artist/idのようなURLが、サーバーで行った作業のJSON応答を返すようにします。
流星(そしておそらくバックボーン)を使用してこれを行うための最良の方法がわかりません。
Meteor.http.get( "url")を使用することはわかっていますが、APIのルートをどのように定義する必要があるのかよくわかりません。
または、別の環境でAPIを作成してから、それを呼び出すのが最善でしょうか?
https://atmosphere.meteor.com/package/collection-apiを使用 して、RESTfulAPIを介してコレクションでCRUD操作を実行できます
現時点では、Meteorはサーバー側ルーティングをサポートしていません(ロードマップ上にあると私に言っている小さな/大きな鳥)。いくつかのハッキーな回避策でそれを達成することができますが。ただし、クリーンなコードを維持し、ハッキーなものを避けたい場合は、ここでは外部システムの方が適している可能性があります。しかし、Meteorを気に留めて、「ハック」してみましょう。
サーバー側のルートは、次のコードを使用して実現できます。
var connect = __meteor_bootstrap__.require("connect");
__meteor_bootstrap__.app
.use(connect.query())
.use(connect.bodyParser()) //I add this for file-uploading
.use(function (req, res, next) {
Fiber(function() {
if(req.method == "POST"){
if(req.url.indexOf('/upload') !== -1){
res.writeHead(200, {'Content-Type': 'application/json'});
res.write(JSON.stringify({"success" : true}));
res.end();
return;
}
}
next();
}).run();
});
page.jsを使用してルーティングを支援できます。MeteorとBackbone.jsには、モデル/コレクションとビュー/テンプレートで非常によく似た機能がいくつかあります。