【发布时间】:2015-10-17 02:30:27
【问题描述】:
我已经设置了一个通过 REST API 响应的远程托管 javascript 服务器 (DreamFactory Server http://www.dreamfactory.com/)。
在本地,我通过 grunt web 服务器通过 $grunt serve 运行 Angularjs 应用程序 https://www.npmjs.com/package/grunt-serve
我在远程服务器上设置了 CORS,以允许多个 http:// 连接类型使用“*”。这工作正常。
我的问题是如何将 CORS 配置限制为仅允许来自我家的 grunt Web 服务器的连接?
我尝试为“localhost”、“127.0.0.1”创建一个条目,这也是我从 whatismyip.com 报告的家庭 Internet IP,这是我的提供商在我 ping 它时为我的家庭 IP 列出的 dns 条目,我为我的家庭互联网 IP 创建的 dyndns 条目...它们都不起作用,除了 '*'(它允许任何站点连接)。
我认为了解 CORS 条目应该是什么样子以仅允许来自我的家庭网络服务器的连接对我来说是一个教育问题。
这可能吗?如果是这样,我应该检查什么以及在哪里检查才能在 CORS 配置中找到要清除的正确条目?
-布赖恩
【问题讨论】:
-
开始阅读文档的好地方developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS 您可以在请求中加入某种
Auth标头,并且仅在该auth 标头存在时才提供cors 标头 -
感谢您的链接。我真的不需要添加任何 Auth 标头,DreamFactory 环境可以本地执行此操作(并且我正在使用它们)。我认为这可能与请求传输的原始值有关。从上面的链接:“请注意,现在除了foo.example(由请求中的ORIGIN:标头标识)之外的任何域都不能以跨站点方式访问资源。Access-Control-Allow-Origin标头应包含在请求的 Origin 标头中发送的值。"
标签: javascript rest access-control