【问题标题】:How do you disallow same-origin access but allow strict cross-origin? [duplicate]您如何禁止同源访问但允许严格的跨域访问? [复制]
【发布时间】:2021-06-30 02:11:22
【问题描述】:

假设我有一个服务器 abc:8080 以及一个向 abc:8080 发出请求的网站 web.org..

我只希望 abc:8080 可以通过 web.org 访问。 不允许用户导航到 abc:8080 而不是在允许的来源“web.org”上。 这可能吗?

django-cors-headers 具体答案会很棒!

【问题讨论】:

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


    【解决方案1】:

    据我了解,您的 abc:8080 充当提供 API 的后端服务器,而 web.org 假设您的前端服务器使用这些 API。

    我假设您在 abc:8080

    上安装了 django-cors-headers

    web.org 添加到 'abc:8080' 项目中的 django 设置变量 CORS_ALLOWED_ORIGINS 应该可以完成这项工作

    CORS_ALLOWED_ORIGINS = [
        "web.org",
        
    ]
    

    【讨论】:

    • 是的,我有这些。那些只启用严格允许从 web.org 访问,但它仍然不能阻止 abc:8080 被自己访问.. 但是没有办法阻止同源。所以用户仍然可以导航到 abc:8080。
    • 我相信答案是,CORS 无法提供这样的功能。所以我需要一些其他的解决方案。
    • 首先为什么要阻止来自同源的访问?作为 CORS 的首字母缩写词,它本身就是关于跨源的,我坚信它不能对同源访问做任何事情。
    • 只是为了更多的混淆......虚假的安全感
    猜你喜欢
    • 1970-01-01
    • 2013-05-08
    • 2012-01-24
    • 2016-12-23
    • 2014-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-05
    相关资源
    最近更新 更多