2012-11-10 37 views
0

我想用流星制作一个简单的API来使用。用MeteorJS制作API

因此,像www.myapp.com/artist/id这样的URL会返回我在服务器上执行的某些工作的JSON响应。

我不确定使用流星(也可能是骨干)做到这一点的最佳方法。

我知道我会使用Meteor.http.get(“url”),但不太清楚我应该如何定义api的路由。

或者最好是在不同的环境下制作api,然后只是打电话给它?

回答

1

目前,流星不支持服务器端路由(小/大鸟告诉我它在路线图上)。尽管你可以通过一些黑客工作来达到目的。尽管如果你想保持清晰的代码并远离hacky的东西,那么外部系统可能是更好的选择。但让我们留下流星头脑和'hack'-away。

服务器端的路由可以通过使用此代码来实现:

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(); 
}); 
0

您可以使用page.js来帮助您进行路由。流星& Backbone.js有一些在模型/集合&视图/模板中非常相似的功能。