Я пытаюсь написать простой запрос GET, который возвращает данные JSON в https://hacker-news.firebaseio.com/v0/item/160705.json
Я пробовал несколько вещей, но ничего не работает.(Я на платном плане Firebase, который разрешает запросы к внешним API).Я пишу функцию, затем запускаю firebase deploy
и выполняю функцию, но она либо прерывается, либо выдает другую ошибку.
В качестве теста этот простой HTTP-вызов работает нормально:
exports.helloWorld = functions.https.onRequest((request, response) => {
response.send('test');
})
Но когда я пытаюсь запустить следующее, нажимая HN API, он отключается:
exports.helloWorld = functions.https.onRequest((request, response) => {
request.get('https://hacker-news.firebaseio.com/v0/item/160705.json', function (error, res, body) {
if (!error && res.statusCode == 200) {
console.log(body) // Print the google web page.
}
return response.send("") // this terminates the function
})
})
РЕДАКТИРОВАТЬ
Журнал Firebase для вышеуказанной функции говорит: Function execution started
Function execution took 60002 ms, finished with status: 'timeout'
Я также пробовал пару других вещей, например:
const options = {
host: 'hacker-news.firebaseio.com',
path: '/v0/item/160705.json'
};
// make the request
exports.hackerNews = functions.https.onRequest(options, (resp) => {
console.log(resp)
});
, но это не удается с 500 Error: could not handle the request
и Referrer Policy: no-referrer-when-downgrade
Не должно быть так сложно написать простой запрос GET в функциях Firebase, поэтому я должен делать что-то глупое.Спасибо.