Firebase存储和访问控制 – 允许来源
我试图通过XMLHttpRequest从Firebase存储中下载文件,但Access-Control-Allow-Origin没有在资源上设置,所以这是不可能的。 有没有办法在存储服务器上设置这个头文件?
(let [xhr (js/XMLHttpRequest.)] (.open xhr "GET" url) (aset xhr "responseType" "arraybuffer") (aset xhr "onload" #(js/console.log "bin" (.-response xhr))) (.send xhr)))
Chrome错误消息:
XMLHttpRequest无法加载https://firebasestorage.googleapis.com/ [EDITED]否请求的资源上存在“Access-Control-Allow-Origin”标头。 原因' http:// localhost:3449 '因此不被允许访问。
从firebase-talk小组/列表上的这篇文章 :
为CORSconfiguration数据的最简单方法是使用
gsutil
命令行工具。 有关gsutil
的安装说明,请访问https://cloud.google.com/storage/docs/gsutil_install 。 一旦你已经安装了gsutil
并通过validation,你可以使用它来configurationCORS。例如,如果您只想允许从您的自定义域下载对象,请将该数据放在名为cors.json的文件中(将域replace为
"https://example.com"
):[ { "origin": ["https://example.com"], "method": ["GET"], "maxAgeSeconds": 3600 } ]
然后,运行这个命令(用你的桶的名字replace
"exampleproject.appspot.com"
):gsutil cors set cors.json gs://exampleproject.appspot.com
你应该设置。
如果您需要更复杂的CORSconfiguration,请参阅https://cloud.google.com/storage/docs/cross-origin#Configuring-CORS-on-a-Bucket上的文档。;
- 无法parsing:com.google.firebase:firebase-core:9.0.0
- Firebase消息传递,从哪里获得服务器密钥?
- Firebase child_added只能添加子项
- 使用带有Firebase的NodeJ – 安全性
- firebase相当于sql在哪里in()
- 无法加载模块描述符类:未find类“com.google.android.gms.dynamite.descriptors.com.google.firebase.auth.ModuleDescriptor”
- 是否可以使用Firebase云消息传递(FCM)直接从设备发送PushNotifications到特殊的UDID?
- 如何在启动应用程序时停止Firebaselogging状态更新
- 没有find类“com.google.firebase.provider.FirebaseInitProvider”?