3

Pythonを使用してGoogleAppEngineでアプリケーションを作成したいと思います。json文字列のリストをPythonスクリプトに送信する必要があります。次のコードを実行しましたが、機能しません。

$.post("/javascriptdata",{v:s},function(data,status) {});

Pythonスクリプトでは、データの送信先となるjavascriptdataという名前のクラスがあります

import wsgiref.handlers
import json
import sys
import cgi
from google.appengine.ext import webapp
from google.appengine.ext.webapp import Request
from google.appengine.ext.webapp.util import run_wsgi_app
from google.appengine.ext.webapp import template

class mainh(webapp.RequestHandler):
    def get(self):
        self.response.out.write(template.render("paint.html",{}))

class javascriptdata(webapp.RequestHandler):
    def post(self):
        self.response.headers['content-Type'] = 'html'
        data1=self.request.get('v')
        self.response.out.write("""<html><body>""")
        self.response.out.write(data1)
        self.response.out.write("""</body></html>""")


def main():
    app = webapp.WSGIApplication([
        ('/',mainh),("/save",javascriptdata)], debug=True)
    wsgiref.handlers.CGIHandler().run(app)


if __name__ == "__main__":
    main()

javascriptdataはURL「/save」に関連付けられています。/ saveにリダイレクトする「save」という名前の送信ボタンを作成しましたが、iamは出力を取得しません。私はそれがばかげた間違いかもしれないことを知っていますが、Iamはそれを整理するのに苦労しています。このコードのデータを投稿して読み取る方法を教えてください。

4

1 に答える 1

3

これは疑わしいようです:

$.post("/javascriptdata",{v:s},function(data,status) {});

/javascriptdataPythonコードにURLがマップされていないためです。おそらくあなたが意味した

$.post('/save', ...?

WSGIApplicationまたは、 init を次のように変更することもできます。

...("/javascriptdata",javascriptdata)...

于 2012-12-21T08:13:30.747 に答える