Javascript 仅为firebase函数中的某些用户代理调用云函数
我只想在请求来自GoogleBot用户代理时调用firebase函数 目前,我正在对每个http请求调用该函数Javascript 仅为firebase函数中的某些用户代理调用云函数,javascript,firebase,google-cloud-functions,Javascript,Firebase,Google Cloud Functions,我只想在请求来自GoogleBot用户代理时调用firebase函数 目前,我正在对每个http请求调用该函数 请求进来了 检查用户代理 用户代理是Google然后是response.send(“hello Google”) 用户代理未Google从firebase主机呈现index.html 这将导致循环,因为函数将从firebase宿主请求index.html文件,这样做将再次调用函数。因此,我认为最好只在请求来自google用户代理时调用该函数 这可能吗?有什么办法解决这个问题吗?谢谢大
response.send(“hello Google”)
这将导致循环,因为函数将从firebase宿主请求index.html文件,这样做将再次调用函数。因此,我认为最好只在请求来自google用户代理时调用该函数
这可能吗?有什么办法解决这个问题吗?谢谢大家! Googlebot使用特定的用户代理发出请求,几乎所有请求都包含关键字Googlebot。只需获取标题并检查它是否包含关键字。 假设您正在使用express:
if (req.get('User-Agent').toLowerCase().includes('googlebot')) {
res.send("hello google")
} else {
request({uri: "http://example.com/index.html"},
function(error, response, body) {
res.send(body)
});
});
//or res.redirect(302, "http://example.com/index.html")
}
谷歌机器人发出带有特定用户代理的请求,几乎所有请求都包含关键词谷歌机器人。只需获取标题并检查它是否包含关键字。 假设您正在使用express:
if (req.get('User-Agent').toLowerCase().includes('googlebot')) {
res.send("hello google")
} else {
request({uri: "http://example.com/index.html"},
function(error, response, body) {
res.send(body)
});
});
//or res.redirect(302, "http://example.com/index.html")
}
重定向到example.com/index.html不起作用?它将再次触发函数重定向到example.com/index.html不起作用?它将再次触发函数这就是我现在正在做的,但我只想在用户代理包含google时调用该函数。同时,按照您的建议执行操作将导致循环,这就是我现在正在做的,但我只想在用户代理包含google时调用该函数。同时,按照您的建议进行操作将导致循环