配置Google App Engine应用程序以进行跨域
您能否建议我们如何配置托管在 Google App Engine 上的 Python 应用程序以接受从浏览器完成的 AJAX 选项、GET、POST、PUT 和 DELETE?
此类调用的具体细节是 XmlHTTPRequest 首先向服务器执行 OPTIONS 请求,以查看允许哪些跨域动词,如果需要的话,列表中会有一个 - 浏览器随后执行此请求。
现在,在浏览器尝试执行 OPTIONS 请求时,我们刚刚收到 405 Method Not allowed 错误。
AJAX 调用是从另一个站点/域进行的。
谢谢你,
罗曼。
Could you please advise, how we can configure our Python app hosted on Google App Engine to accept the OPTIONS, GET, POST, PUT and DELETE from AJAX being done from browser?
The specifics of such calls are XmlHTTPRequest first does OPTIONS request to the server to see what cross-domain verbs are allowed and if desired one is in the list - browser does this request afterwards.
Right now we just get a 405 Method Not Allowed in attempt of browser to do OPTIONS request.
AJAX calls are being done from another site/domain.
Thank you,
Roman.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
绕过允许浏览器跨域请求的同源策略的一种方法是采用JSONP 但据我所知,它只支持
GET
动词;事实上,这是一个 GET 请求,用于检索 DOM 文档中注入的标记的
src
如果 JSONP 不是一个选项,则更现代的方法是通过使用 CORS,将 Access-Control-Allow-Origin Http 标头添加到响应< sup>*:
在Python:
Java:
* 检查浏览器兼容性 这里
One way to bypass the same-origin policy allowing browsers cross-domain requests is adopting JSONP but AFAIK, it only supports the
GET
verb; In fact, it's a GET request to retrieve thesrc
of a<script>
tag injected in the DOM DocumentIf JSONP is not an option, a more modern way is by using CORS, adding the Access-Control-Allow-Origin Http header to the response *:
In Python:
In Java:
* Check the browser compatibility here