I would like to call POST method using javascript of my phonegap app such that I am able to post to a form hosted on google app engine .
Here is the code for form :
<!DOCTYPE html>
<html>
<head>
<title>savedata</title>
</head>
<body>
<h1>savedata</h1>
<form method="post">
<label>
<div>Latitude</div>
<input type="number" step = 0.00001 name="lat" >
</label>
<label>
<div> Longitude </div>
<input type="number" step = 0.00001 name="lon" >
</label>
<div class="error">{{error}}</div>
<input type="submit">
</form>
<hr>
{% for loc in locs %}
<div class = "loc">
<div class ="lat">{{loc.latitude}}</div>
<pre class ="lon">{{loc.longitude}}</pre>
</div>
{% endfor %}
</body>
</html>
Following is code for my app-engine running python :
class Handler(webapp2.RequestHandler):
def write(self,*a,**kw):
self.response.out.write(*a,**kw)
def render_str(self,template,**params):
t = jinja_env.get_template(template)
return t.render(params)
def render(self,template,**kw):
self.write(self.render_str(template,**kw))
class Location(db.Model):
latitude = db.FloatProperty(required=True)
longitude = db.FloatProperty(required=True)
created = db.DateTimeProperty(auto_now_add=True)
class MainPage(Handler):
def render_front(self,lat="",lon="",error=""):
arts = db.GqlQuery("select * from Location order by created desc")
self.render('front.html',lat=lat,lon=lon,error=error,locs=arts)
def get(self):
self.render_front()
def post(self):
lat = self.request.get("lat")
lon = self.request.get("lon")
lat = float(lat)
lon = float(lon)
if lat and lon:
a = Location(latitude=lat, longitude=lon)
a.put()
self.redirect("/")
else:
error="we need both title and some art"
self.render_front(lat,lon,error)
application = webapp2.WSGIApplication([('/',MainPage)],debug=True)
I want to know the way such that I can post and save data to my app-engine running a simple javascript from third-side , without loading the url.
lets say my appengine url: www.linux.appspot.com
p.s: I am new to web development , just completed the course on udacity , even a hint is okay if you are not willing to answer .