我正在编写一个脚本来废弃某个网页。对于该架构,它是一个无服务器功能,每分钟抓取特定页面,以便我们尽快收到更改通知。
我的问题是查询的结果说没有找到新条目,只有旧条目,它没有报告。
今天有另一个条目是新的,所以我应该得到一个关于它的报告。
当我手动执行该功能时,它确实有效并报告了它。当我删除该条目时,它仍然没有从 AWS 自动报告它。
在做了一些调试之后,我注意到在客户端,请求的结果是网页的新版本。在 AWS Lambda 上,我仍然得到页面的旧结果。
尝试了客户端命令(都有效)
node-debug sls function run example/functionname
sls function run example/functionname
服务器确实完全运行该功能,并且不会在 cloudwatch 中报告任何错误。我个人开始认为问题与缓存有关,尽管那里不存在(对吗?)。
欢迎任何想法或建议。
获取旧版本的行:
request(url, function (error, response, html) {
示例代码:(异步部分)(get= 获取 html)(checkLogged = 如果已报告)(doLog = 如果未报告则记录)
export const respond = (event, cb) => {
async.waterfall([
get,
checkLogged,
doLog
], cb);
};
检查所有条目的代码
const get = (cb) => {
const url = 'http://www.xxx.be/en/xxx/xxx/xxx';
request(url, function(error, response, html){
if(!error){
//look for entries
}
else{
return cb(new Error('couldn\'t load xxx'));
}
});
}