【问题标题】:Best way to call multiple operations multiple times after another多次调用多个操作的最佳方法
【发布时间】:2021-11-22 13:51:32
【问题描述】:

我有以下场景:

我每 5 分钟调用 3 个 API。我异步执行此操作,因此调用API 的顺序无关紧要。 “呼叫”本身包含

  1. HTTP-向API 的请求
  2. 数据提取(读取响应)
  3. 将其存储到数据库中。

所以这 3 个步骤总是相同的。目前我的代码看起来有点像这样:

scraper.Request()
scraper.Extract()
scraper.Save()

我肯定把它放到另一个函数中来包装它,但它在我看来有点奇怪。是否有任何我可以遵循的“模式”与我的场景相匹配?

提前致谢

【问题讨论】:

  • 模式?模式是“当需要多次调用一些通用逻辑时,为其提取一个方法并多次调用。从我的角度来看,这里没有什么可做的。

标签: c# web-scraping design-patterns


【解决方案1】:

如果您要执行 3 次相同的操作,请将其封装在一个方法中,并调用该方法 3 次,每次传入适当的参数。也许是这样的:

static void Main()
{
    PollApi("http://firstapi.com");
    PollApi("http://api.second.com");
    PollApi("http://wkdapis.com/third");
}

private void PollApi(string url)
{
    scraper.Request(url);
    scraper.Extract();
    scraper.Save();
}

我想您已经准备好将通话时间间隔五分钟...

【讨论】:

    猜你喜欢
    • 2019-08-17
    • 2012-01-16
    • 2015-12-13
    • 1970-01-01
    • 1970-01-01
    • 2021-06-22
    • 1970-01-01
    • 2021-02-18
    • 1970-01-01
    相关资源
    最近更新 更多