3

私はangularjsとpythonを初めて使用しますが、この問題があります。私はangularjsを使用してフォームのデータをPythonサーバー側に渡そうとしています。.jsコントローラーに送信する前に、フォームをjsonオブジェクトに変換しました。

controller.js:

    jsonObj = this.form.toJson;
    $xhr('POST','/form/processform',jsonObj,function() {
        alert("Done!");
        window.load("/");
    }, function(){
        "Request failed";
    });

Python:

from google.appengine.ext import webapp
from google.appengine.ext.webapp.util import run_wsgi_app
import simplejson as json

class processForm(webapp.RequestHandler):
    def post(self):
        form = json.loads(self.request.body)
        # process forms 
        self.redirect("#/")#redirects to main page

「JSONDecodeError:JSONオブジェクトをデコードできませんでした」というエラーを受け取りました。「POST」を「JSON」に置き換えようとしましたが、うまく機能しないようです。また、angularjsの$ resourceについても読みましたが、使用方法がわかりません。

これは$xhrの間違った使用法によるものですか?どんな助けでも大歓迎です!:)

4

1 に答える 1

0

変数によるとJSONDecodeErrorjsonObj有効なJSONオブジェクトが含まれていません。

私は問題がここにあると信じています:

jsonObj = this.form.toJson;

toJsonメソッドを変数に割り当てるのではなく、呼び出す必要があります。

jsonObj = angular.toJson(this.form);
于 2012-03-20T12:35:42.537 に答える