Мой вопрос - продолжение Нужен ли мне платный план для использования recaptcha в функции firebase?
Я нахожусь в той же ситуации: мне нужно использовать облачную функцию firebaseс Google Recaptcha API.Тем не менее, я сталкиваюсь с ошибкой getaddrinfo enotfound.
Вот мой код:
exports.checkRecaptcha = functions.https.onRequest((req, res) => {
res.set('Access-Control-Allow-Origin', "*")
res.set('Access-Control-Allow-Methods', 'GET, POST')
const request = require('request');
const got = require('got');
var requestQuery = req.query;
var secret_key = '---------';
if( requestQuery != undefined && requestQuery != '' && requestQuery != null && requestQuery.response != undefined && requestQuery.response != '' && requestQuery.response != null ){
var response = requestQuery.response;
got('recaptcha.google.com/recaptcha/api/siteverify?secret='+ secret_key +'&response=' +response, { json: true }).then(response => {
console.log(response);
res.status(200).send("");
}).catch(error => {
console.log(error);
res.status(500).send(error);
});
}else{
res.send({"responseCode" : 1,"responseDesc" : "Failed captcha verification=> FOIRAGE"});
}
});
Согласно Дуг Стивенсон , API сервера reCAPTCHA имеетя был в белом списке, поэтому я должен иметь доступ к нему с помощью своей облачной функции, но я не могу.