2

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

在开发过程中,我在 Eclipse 中启动休息服务并为我的静态文件启动服务器

grunt server

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

它适用于 yeoman 0.9,但更新后我得到:

Cannot POST /

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

谢谢!

莱昂蒂

4

1 回答 1

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'});
});

在您的连接或 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() 然后在构建期间或之后更改它。

于 2013-08-12T22:00:02.057 回答