有人必须能够解释我在这里做错了什么!我正在尝试为Google App Engine应用程序创建最简单的AJAX帖子示例...而且我失败了!
这是app python
import cgi from google.appengine.api import users from google.appengine.ext import webapp from google.appengine.ext.webapp.util import run_wsgi_app from google.appengine.ext import db from django.utils import simplejson class EmailItem(db.Model): email = db.StringProperty(multiline=False) date = db.DateTimeProperty(auto_now_add=True) class EmailList(webapp.RequestHandler): def get(self): self.response.out.write("You see nothing!") def post(self): eitem = EmailItem() eitem.email = self.request.get("address") eitem.put() self.response.out.write("success") application = webapp.WSGIApplication([('/', EmailList)]) def main(): run_wsgi_app(application) if __name__ == "__main__": main()
这是jQuery
$.ajax({ type: "POST", url: "myappengineURL", data: "address=" + sVerifiedEmail, success: function(msg) { alert("Data Saved: " + msg); }, });
假设我实际上知道如何使用jQuery并调用AJAX调用...为什么我一直得到405错误?
我已经用这六种不同的方式重写了这个东西,试图让它发挥作用......我做不到!到目前为止,我正在查看来自http://blog.pythoughts.com/posts/AJAX-with-Google-App-Engine#jqueryAjax和Google代码的AJAX RPC文章的建议,我无法发布链接,因为StackOverflow说不不不.这些例子似乎都不适合我.
我究竟做错了什么?
您的问题被称为"同源政策".这就是您在日志中看到OPTIONS方法的原因.您的Ajax请求的域和协议必须与您从中启动它的域和协议相同.
这是同样的问题和良好的答案.