0

だから私はこのhtml/jsがajaxの投稿をテストしようとしています

<html>

<head>
    <script src="js/jquery-1.8.2.min.js"></script>
    <script src="../js/bootstrap.min.js"></script>
    <script type="text/javascript">
        $(document).ready(function() { 
            document.write("booo");
            var data = {"lat":5};
            $.ajax({
                    type: "POST",
                    url: "/geo",
                    data: data,
                });
            });
            var data = {"lat":5};
            $.ajax({
                    type: "POST",
                    url: "/geo",
                    data: data,
                });
    </script>
</head>

<body>
    <form method="post">
        <input name="lat" type="text">
        <input name="lon" type="text">
        <input type="submit">
    </form>
</body>
</html>

今、私はデータを投稿し、Pythonで取得し、dbに書き戻し/保存しようとしていますが、ajaxpost関数からは何も起こりません。これが私のPythonです。

class GeoHandler(Handler):

    def get(self):
        self.render("geo.html")

    def post(self):
        lat = self.request.get("lat")
        lon = self.request.get("lon")
        self.write(lat)
        loc = models.LocModel(coords = db.GeoPt(lat,lon), hm = str(lat).join(str(lon)))
        loc.put()

私のURLハンドラーは

    ('/geo', GeoHandler),   

最終的に私はjavascriptを使用してユーザーの位置データをキャプチャしてマップしようとしています...しかし、app engine / webapp2はクライアントのipv6を取得するのが好きで、ipv5の位置データを取得する方法はありませんが地理データ用のhtml5/jsソリューション..しかし、基本データをサーバーに投稿することさえできません

4

1 に答える 1

1

データにを含めていません"lon"。このようなもの:

 var data = {"lat": 5, "lon": 6}

また、リクエストヘッダー、より具体的にはを確認することもできますX-AppEngine-CityLatLong。これは都市レベルであり、もちろんアプリによって異なります。

于 2012-10-10T23:29:58.210 に答える