首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用连接-休息在发球时的支撑杆?

用连接-休息在发球时的支撑杆?
EN

Stack Overflow用户
提问于 2015-10-29 06:49:08
回答 1查看 204关注 0票数 0

我正在尝试将grunt serve连接-休息中间件结合使用。我试着在我的Gruntfile.js中配置Gruntfile.js,它适用于GET请求,而不是POST。我想知道我错过了什么。这是我的Gruntfile.js (节选):

代码语言:javascript
复制
module.exports = function (grunt) {

       var postResponder = function(request, content, callback) {
           callback(null, {Status : 42});
       }

        var Rest = require('connect-rest');
        var rest = Rest.create( {context: '/'} );
        rest.assign(['get'],'/*', postResponder);

..。

代码语言:javascript
复制
livereload: {
    options: {
      open: true,
      middleware: function (connect) {
        return [
          connect().use(rest.processRequest()),
          connect.static('.tmp'),
          connect().use('/bower_components', connect.static('./bower_components')),
          connect().use('/app/styles', connect.static('./app/styles')),
          connect.static(appConfig.app)
        ];
      }
    }
  },

就像一种魅力。但当我把这一行改为:

代码语言:javascript
复制
        rest.assign(['post'],'/*', postResponder);

代码语言:javascript
复制
        rest.assign('*','/*', postResponder);

然后,在发帖时,我在日志中得到以下条目(运行grunt -调试):

[D] server POST /api/groups.json?cache=false&force=true&requesttime=2015-10-29T06:46:24.443Z 404 103 - 2.027 ms

以及发布时出现的404错误(get工作)。

我错过了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-30 12:59:47

事实证明,为了我的目的-能够支持JSON的文章作为一个模拟,我一开始就不需要连接-休息连接的构建功能提供了我所需要的一切。因此,Gruntfile.js的开始现在如下所示:

代码语言:javascript
复制
    module.exports = function (grunt) { 
           var bodyParser = require("body-parser");
           var postResponder = function(request, response, next) {
               if (request.method === 'POST') {
                   console.log(request.method+" "+request.url);
                   response.setHeader('Content-Type', 'application/json');
                   response.statusCode = 200;
                   response.end(JSON.stringify(request.body));
               } else {
                   next();
               }
            };

livereload部分是这样的:

代码语言:javascript
复制
      livereload: {
        options: {
          open: true,
          middleware: function (connect) {
            return [
              connect().use('/api', bodyParser.json()),
              connect().use('/api', postResponder),
              connect.static('.tmp'),
              connect().use('/bower_components',
                             connect.static('./bower_components')),
              connect().use('/app/styles', connect.static('./app/styles')),
              connect.static(appConfig.app)
            ];
          }
        }
      }

注意:我在这里将回发限制为对/api的调用--您可能需要不同的端点。该示例简单地回显了所接收的JSON。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33407630

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档