-1

koa-body-parser を使用して POST データを取得しようとしていますが、次のエラーが発生します。

SyntaxError: Unexpected token e
  at Object.parse (native)

このエラーは参照してください

/co-body/node_modules/raw-body/index.js

ライブラリ co-body は「parse」を使用しようとしていると思いますが、私のノード バージョンではこの機能が制限されています。

ノード0.11.13を使用しています

これは app.js の一部です

var path=require('path');
var koa = require('koa');
var app = koa();

app.use(require('koa-body-parser')());

//enrutamiento
app.use(require('./configs/routes')(app));

これは、呼び出しを受け取る関数です。

function *(){
    /*
    var str = 'email=lopezchr%40gmail.com&password=123123';
    console.log(JSON.parse(str));
    */
    var self = this;
    var attributes= this.request.body
    var userModel = this.models.user;
    userModel.create(this.request.body).exec(function(){
        self.body={success:true,description:"user Created"}
    });
}

さらに、これをやろうとすると:

var str = 'email=lopezchr%40gmail.com&password=123123';
console.log(JSON.parse(str));

私は同じエラーを受け入れます..

アップデート

他の投稿で、文字列が JSON ではないことに気付きました..すっごく...それが問題です...

私はこれをやろうとしています:

$.post('/auth',$(form).serialize(),function(data){
                    console.log(data);
                });

あと、koa-body-parceでフォームデータを受信したいのですが…どうすればいいですか?

4

1 に答える 1

0

何らかの理由で、jquery 関数 $.post はタイプ json のメッセージを送信していたため、エラーが発生しました..現在、メッセージタイプはプレーン/テキストであり、機能しています..ありがとう

于 2014-08-17T15:03:01.460 に答える