【问题标题】:Dynamic HTTP Requests based off DateTime in WebAPI + AngularJS基于 WebAPI + AngularJS 中的 DateTime 的动态 HTTP 请求
【发布时间】:2015-04-13 23:51:33
【问题描述】:

我有一个 AngularJS 应用程序连接到 ASP.NET Web API。我想每 N 天生成一个新实体并将其保存到我的数据库中(可能基于 DateTime/Timer)。我已经在 Web Api 中有一个 HTTP 方法来执行此操作。有没有办法让 WebAPI 向 AngularJS 发送消息以调用该 HTTP 方法,或者让 WebAPI 自己调用,或者让一个完全独立的服务来执行此操作?

我知道 WebAPI 应该只接受请求而不是发出请求,这是否意味着我应该有某种单独的服务?如果不是,我的时间计算在哪里进行?

【问题讨论】:

    标签: c# angularjs datetime asp.net-web-api timer


    【解决方案1】:

    有没有办法让 WebAPI 向 AngularJS 发送消息来调用它 HTTP方法,或者让WebAPI自己调用,或者有一个完全独立的 服务这样做吗?

    有一个完全独立的服务来执行此操作。 Windows 服务可能是执行某些重复性后台任务的理想选择。例如,它可以每 N 天调用一次您的 Web API。

    托管计时器和执行recurring background tasks in ASP.NET 可能会带来一些挑战,一般不建议这样做。

    【讨论】:

    • 甚至是一个简单的exe,配合任务调度器都可以做到。
    【解决方案2】:

    我同意前面的回答,您最好使用服务来执行此逻辑。如果出于某种原因您需要 JavaScript 来完成这项工作,您可以做的是每隔 1 分钟或 1 小时或任何有意义的时间间隔调用 JavaScript/Angular 服务。然后,它调用的 WebAPI 端点将确定是否该生成新实体并返回 true 或 false。当它返回 true 时,您将调用实际创建实体的现有端点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-04-20
      • 1970-01-01
      • 2019-10-11
      • 1970-01-01
      • 2018-04-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多