You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NestJS @Cron装饰器默认时区及执行时间基准咨询

关于NestJS @Cron装饰器的时区问题
  • 默认时区:UTC时间,不是服务器本地时间。你当前写的"0 0 * * *"会在UTC午夜触发,对应AWS孟买区域(IST,UTC+5:30)的早上5:30,不符合你要的每日IST午夜执行的需求。

  • 如何设置为印度标准时间(IST):

    1. 全局配置(所有Cron任务生效):
      在根模块导入ScheduleModule时指定时区:
      ScheduleModule.forRoot({
        timezone: 'Asia/Kolkata', // 对应印度标准时间的时区标识符
      });
      
    2. 单个任务配置(仅当前任务生效):
      在@Cron装饰器的第二个参数里添加时区配置:
      @Injectable()
      export class CronService {
        @Cron("0 0 * * *", {
          timezone: 'Asia/Kolkata',
        })
        async midnightCron() {
          // implementation
        }
      }
      

注意:建议使用时区标识符(如Asia/Kolkata)而非直接写UTC+5:30,这种写法更规范且能兼容夏令时调整(印度虽无夏令时,但遵循标准写法更稳妥)。

内容的提问来源于stack exchange,提问作者Vijay PD

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 12:07:18