1

我正在编写一个脚本来废弃某个网页。对于该架构,它是一个无服务器功能,每分钟抓取特定页面,以便我们尽快收到更改通知。

我的问题是查询的结果说没有找到新条目,只有旧条目,它没有报告。

今天有另一个条目是新的,所以我应该得到一个关于它的报告。

当我手动执行该功能时,它确实有效并报告了它。当我删除该条目时,它仍然没有从 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'));
        }
    });
}
4

0 回答 0