如何执行Firebase功能的域验证

Nic*_*ker 5 google-webmaster-tools firebase google-cloud-functions

我想使用Google的网站站长工具为我的“站点”添加域验证,该站点完全由Cloud Functions for Firebase组成:

https://us-central1-<project-id>.cloudfunctions.net/

但是,我无法弄清楚如何以一种可以成功运行的方式执行此操作。

推荐的方法是下载并提供带有验证码的HTML文件。但是,我似乎无法用点创建函数。

exports['googleKEY.html'] = functions...
Run Code Online (Sandbox Code Playgroud)

尝试部署时失败。

另一种选择是在我的“主页”中放置一个meta标记,但这也无法正常工作,因为我似乎无法创建索引页面。

exports[''] = functions...
Run Code Online (Sandbox Code Playgroud)

exports['index.html'] = functions...
Run Code Online (Sandbox Code Playgroud)

也失败了。

有没有一种方法可以仅通过功能来进行域验证?我将不胜感激。

Val*_*tin 6

我遇到了同样的问题:我想在 Google Search Console 中验证我的域所有权。但该域实际上是一个 Firebase Cloud Functions 域 ( https://*.cloudfunctions.net)。我今天找到了一个超级简单的解决方案:

1) 在 Google Search Console 中添加属性时,选择方法“URL 前缀”并输入您将在步骤 3 中创建的函数的 url(即https://foobar.cloudfunctions.net/googleDomainVerification)。

2) 选择方法“HTML 标签”并复制元标签。

3) 创建一个 https 函数,并在 Firebase Cloud Function 上推送。不要忘记从第 2 步中复制您的元标记:

exports.googleDomainVerification = functions.https.onRequest((req, res) => {
    res.status(200).send('<!DOCTYPE html> <html> <head> YOUR_META_TAG_HERE </head> <body> </body> </html>')
})
Run Code Online (Sandbox Code Playgroud)

4) 稍等片刻,然后在 Google Search Console 上按“验证”

就是这样。一切都应该现在工作:)


小智 4

所以...我想我终于可以找到解决方案了。

没有直接的方法来验证 Firebase Functions 域 ( https://*.cloudfunctions.net),但验证 Firebase 托管域 ( https://*.firebaseapp.com) 很容易(使用验证文件)。那么让我们从这个开始吧。

托管中有一个配置选项,用于设置 url 重写以提供功能。(记录在这里

这是上面链接中的修改后的示例配置,打开 urlhttps://<your-project-id>.firebaseapp.com/covertFnBigben来调用 Function bigben

{
  "hosting": {
    "public": "public",

    // Add the following rewrites section *within* "hosting"
    "rewrites": [
      {
        "source": "/covertFnBigben", "function": "bigben"
      }
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

因此,在成功验证您的 Firebase 托管域后,您可以使用该域来调用 Firebase 函数。