不允许跨站点访问(使用Django 2.1.5)

时间:2019-02-22 04:35:07

标签: django-rest-framework django-2.1 django-cors-headers

我正在使用带有DRF 3.9.1的Django 2.1.5和firefox浏览器控制台的应用程序,出现此错误:

downloadable font: download failed (font-family: "FontAwesome" style:normal weight:400 stretch:100 src index:2): bad URI or cross-site access not allowed source: http://softpro-admin-templates.websitedesignmarketingagency.com/assets/vendor_components/font-awesome/fonts/fontawesome-webfont.woff?v=4.7.0

在谷歌搜索后,我遇到了此链接https://github.com/ottoyiu/django-cors-headers/

如文档中所述,我已经安装了软件包并在设置文件中进行了以下修改:

    CORS_ORIGIN_ALLOW_ALL = True

    CORS_ALLOW_CREDENTIALS = True

    MIDDLEWARE = [
        'corsheaders.middleware.CorsMiddleware', #added at the top
         -----

    ]

    INSTALLED_APPS = [

    'corsheaders',

    ]

但是,我仍然遇到相同的错误。有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我假设您不是softpro-admin-templates.websitedesignmarketingagency.com的所有者

您在网站上的某个地方使用的是fontawesome版本4.7.0(A common icon font),但提供了上述主机作为该字体的来源。由于CORS policies in most browsers,如果请求来源(您的)的站点是从其他域(来源)获取的,则主机必须明确允许这样做。

由于softpro-admin-templates.websitedesignmarketingagency.com的维护者可能对您的网站一无所知,因此尚未完成。将fontawesome的src更改为您自己的服务器或the CDN suggested by fontawesome的源即可解决此问题。