为本地主机测试在Firebase存储上启用CORS
我的web应用程序将在Firebase主机上运行,但我需要通过为本地主机测试在Firebase存储上启用CORS,firebase,firebase-storage,Firebase,Firebase Storage,我的web应用程序将在Firebase主机上运行,但我需要通过localhost:5000上的Firebase Service进行本地测试 我在尝试读取Firebase存储上的文件时遇到CORS错误 我遵循了,并将相对标题部分添加到firebase.json: { "firestore": { "rules": "firestore.rules", "indexes": "firestore.indexes.json" }, "hosting": { "pub
localhost:5000上的Firebase Service
进行本地测试
我在尝试读取Firebase存储上的文件时遇到CORS错误
我遵循了,并将相对标题部分添加到firebase.json:
{
"firestore": {
"rules": "firestore.rules",
"indexes": "firestore.indexes.json"
},
"hosting": {
"public": "public",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"headers": [ {
"source": "**",
"headers": [ {
"key": "Access-Control-Allow-Origin",
"value": "*"
} ]
}]
},
"storage": {
"rules": "storage.rules"
}
}
但这并没有解决问题。我仍然被CORS错误阻止
使用解决方案编辑
我已经通过使用python库和一个简短脚本解决了这个问题:
#!/usr/bin/env python3
import firebase_admin
from firebase_admin import credentials
from firebase_admin import storage
CREDFILE = home + 'credentials.json'
cred = credentials.Certificate(CREDFILE)
firebase_admin.initialize_app(cred, {
'storageBucket': '<myapp>.appspot.com'
})
bucket = storage.bucket()
bucket.cors = [{
'origin': ['*'],
'method': ['GET'],
'maxAgeSeconds': 86400
}]
bucket.update()
#/usr/bin/env蟒蛇3
导入firebase_管理员
从firebase_管理员导入凭据
从firebase_管理导入存储
CREDFILE=home+'credentials.json'
cred=凭证.证书(凭证文件)
firebase_管理员初始化_应用程序(cred{
“storageBucket”:“.appspot.com”
})
bucket=storage.bucket()
bucket.cors=[{
“来源”:[“*”],
'method':['GET'],
“maxAgeSeconds”:86400
}]
bucket.update()