【发布时间】:2020-04-08 07:14:03
【问题描述】:
我正在尝试设置一个 Firebase 云函数,该函数会定期对 Feedly API 进行 api 调用。
但是,它不起作用,我不确定为什么。代码如下:
const functions = require('firebase-functions')
const express = require('express')
const fetch = require('node-fetch')
const admin = require('firebase-admin')
admin.initializeApp()
const db = admin.firestore()
const app = express()
exports.getNewsArticles = functions.pubsub
.schedule('every 5 minutes')
.onRun(() => {
app.get('/feedly', async (request, response) => {
const apiUrl = `https://cloud.feedly.com/v3/streams/contents?streamId=user/[USER_ID_NUMBER]/category/global.all&count=100&ranked=newest&newThan=300000`
const fetchResponse = await fetch(apiUrl, {
headers: {
Authorization: `Bearer ${functions.config().feedly.access}`
}
})
const json = await fetchResponse.json()
json.items.forEach(item => {
db.collection('news').add({
status: 'pending',
author: item.author || '',
content: item.content || '',
published: item.published || '',
summary: item.summary || '',
title: item.title || '',
})
})
})
})
知道我需要做什么才能让它工作吗?
【问题讨论】:
-
什么不起作用?你试过什么?什么错误(如果有的话)?什么症状?
-
下次请不要重新发布相同的question,而是编辑您的原始问题(其下方有一个链接)以包含其他信息。
-
@FrankvanPuffelen 我没有转发同样的问题。这个问题是问为什么我不能使用
firebase serve命令运行计划的云功能。另一个问题是询问如何使用 api 调用运行计划的云功能。我仍然想要我的另一个问题的答案(即使这个问题得到了正确回答)。 -
糟糕,好点子。我想我可能两次错误地点击了你的同一个问题。对于那个很抱歉。我重新打开了your other question,并且可能会回答你正在尝试做的事情很遗憾(还)不可能。
标签: firebase google-cloud-firestore google-cloud-functions google-cloud-pubsub