yeoman 1.0 - 让开发服务器接受POST调用

时间:2013-05-03 14:59:01

标签: connect yeoman gruntjs

我使用yeoman作为我的应用程序,它由两部分组成 - 客户端站点有js / html / css和其他服务。

在开发期间,我在Eclipse中启动rest服务并使用

启动服务器以获取我的静态文件
grunt server

问题是我必须对root url'/'发出post请求(这是一个虚假的登录POST请求,以使浏览器提示保存密码)。

它与yeoman 0.9一起工作,但在更新后我得到:

Cannot POST /

有没有办法配置grunt服务器任务来接受POST请求?

谢谢!

Leonti

1 个答案:

答案 0 :(得分:1)

我认为你想要连接休息中间件。

https://github.com/imrefazekas/connect-rest     npm install connect-rest --save-dev

在顶部编辑Gruntfile.js

var restSupport = require('connect-rest');
   restSupport.post( { path: '/savequestion'}, function(req, content, next){
   next(null, {result: 'OK'});
});

在你的connect或livereload中间件部分:

        livereload: {
            options: {
                middleware: function (connect) {
                    return [
                        lrSnippet,
                        mountFolder(connect, '.tmp'),
                        mountFolder(connect, yeomanConfig.app),
                        restSupport.rester( {'context': '/forms'} ),
                        rewriteRulesSnippet, // RewriteRules support

关键部分是“restSupport.rester()”,如果你不想要它,请删除上下文。

这个简单的函数应该只使用json对象{result:'OK'}回复你发布到/ forms / savequestion的所有内容。至少应该让你在构建模板之前在grunt server:9000模式中构建脚手架。如果没有这个,你将需要$ .get()每个$ .post(),然后在构建期间或之后更改它。