Django webapp 在 ipad(csrf_token) 和 IE(CORS) 错误上不起作用



抱歉,我知道这是两个问题合二为一,但可能有一个资源可以解决我的两个问题。我有一个用Django创建的Web应用程序,我正在将其加载到我已经开始测试的wordpress网站的iframe中。

目前,它按照谷歌浏览器,我的Android手机和iPhone的设计工作。但是,当我仅在使用 ipad 时从 iframe "开机自检"时,我遇到了 CSRF 令牌问题。

我也无法在Internet Explorer中加载,在浏览"django-cors-headers"文档后出现CORS错误。

我有X框架选项和Cors白名单,允许网站托管iframe。

我不知道为什么该应用程序可以在几个设置中正常工作,而在其他设置中不能正常工作 - 或者错误可能只是由于我正在测试的设备上的个性化设置造成的。如果有人能以任何方式提供帮助,将不胜感激!

你可以参考这个线程,检查你是否遵循了使用 django-cors-headers 库的所有步骤。也请检查你使用的 Django 版本,该库不支持Django 版本 <1.11。在这个线程中,它表明CORS_ORIGIN_WHITELIST作为字符串工作正常,但不能作为元组工作。请确认您使用了正确的表格。

对于 IE 中的 CORS 错误,服务器必须将以下标头附加到所有响应,您可以查看本文以获取更多信息。您还可以参考此博客,其中提供了另一种在IE中处理CORS问题的方法。

Access-Control-Allow-Origin: http://example.com
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: ACL, CANCELUPLOAD, CHECKIN, CHECKOUT, COPY, DELETE, GET, HEAD, LOCK, MKCALENDAR, MKCOL, MOVE, OPTIONS, POST, PROPFIND, PROPPATCH, PUT, REPORT, SEARCH, UNCHECKOUT, UNLOCK, UPDATE, VERSION-CONTROL
Access-Control-Allow-Headers: Overwrite, Destination, Content-Type, Depth, User-Agent, Translate, Range, Content-Range, Timeout, X-File-Size, X-Requested-With, If-Modified-Since, X-File-Name, Cache-Control, Location, Lock-Token, If
Access-Control-Expose-Headers: DAV, content-length, Allow

最新更新