免费好用的节假日API

11,057 阅读5分钟
原文链接: lanfly.vicp.io

使用须知

  1. 这是由本人利用业余时间开发的节假日API。
  2. 在自己的兴趣爱好项目中使用,并免费提供给同样需要的人。
  3. 节假日每年我都会尽快更新。
  4. 如果发现某个节假日配置错误或没有配置,欢迎联系我。
  5. 有其它需求也欢迎联系我,争取给大家提供更好更稳定的服务。
  6. 文字接口都是可个性化配置的。

联系方式

bluescode@outlook.com

API文档

获取指定日期的节假日信息

接口地址:http://lanfly.vicp.io/api/holiday/info/$date

@params $date: 指定日期的字符串,格式 '2018-02-23'。可以省略,则默认服务器的当前时间。

@return json: 如果不是节假日,holiday字段为null。

{
    "code": 0,               // 0服务正常。-1服务出错
    "holiday": {
        "holiday": false,     // true表示是节假日,false表示是调休
        "name": "国庆前调休",  // 节假日的中文名。如果是调休,则是调休的中文名,例如'国庆前调休'
        "wage": 1,            // 薪资倍数,1表示是1倍工资
        "after": false,      // 只在调休下有该字段。true表示放完假后调休,false表示先调休再放假
        "target": '国庆节'    // 只在调休下有该字段。表示调休的节假日
    }
}

示例:

http://lanfly.vicp.io/api/holiday/info/2018-3-2

http://lanfly.vicp.io/api/holiday/info/2018-03-02

http://lanfly.vicp.io/api/holiday/info

获取指定日期的下一个节假日(如果在放假前有调休,也会返回)

接口地址: http://lanfly.vicp.io/api/holiday/next/$date

@params $data: 指定日期的字符串,格式 '2018-02-23'。可以省略,则默认服务器的当前时间。

@return json: 返回指定日期的下一个最近的节假日,如果在放假之前要调休,则会一起返回调休的信息。

{
    "code": 0,               // 0服务正常。-1服务出错
    "holiday": {
        "holiday": true,     // 该字段一定为true
        "name": "国庆节",     // 节假日的中文名。
        "wage": 3,           // 薪资倍数,3表示是3倍工资
        "date": "2018-10-01" // 节假日的日期
    },
    "workday": {             // 如果节假日前没调休,则此字段为null
        "holiday": false,    // 此字段一定为false
        "name": "国庆前调休",  // 调休的中文名
        "wage": 1,           // 薪资倍数,3表示是3倍工资
        "after": false,      // true表示放完假后调休,false表示先调休再放假
        "target": '国庆节',   // 表示调休的节假日
        "date": "2018-09-29" // 表示要调休的日期
    }
}

示例:

http://lanfly.vicp.io/api/holiday/next/2018-6-1

http://lanfly.vicp.io/api/holiday/next/2018-09-28

http://lanfly.vicp.io/api/holiday/next

下面是高级API。返回人类可阅读的文字,适用于语音交互中。

例如:使用文字转语音,把返回的结果直接播放出来。适用于VUI语音交互中使用。

返回文字。距离今天最近的一个放假安排。周六周末、调休、节假日都会考虑,比较全面的放假安排。

接口地址: http://lanfly.vicp.io/api/holiday/tts

@params: 没有参数

@return json: 返回可直接播放的文字。

{
    "code": 0,               // 0服务正常。-1服务出错
    "tts": "明天就是周六了,今天努力工作哦!。最近的一个节日是清明节。还要12天。早着呢!"
}

示例语句:

今天是周末,放松一下吧!

今天是国庆节前调休,明天就是国庆节了,加油!

你在想什么!今天就是国庆节啊。

清明节才刚刚过完,今天是清明节调休,老老实实上班吧。

很遗憾的告诉您,这周六要劳动节前调休,不过周日就是劳动节了。

很遗憾的告诉您,这周六和周日都要国庆节前调休。再过3天是国庆节。

明天就是中秋节了,开不开心?不过记得周日要中秋节调休,设置好闹钟,别玩太嗨。

明天就是周六了,今天努力工作哦!最近的一个节日是清明节。还要12天。早着呢!

还有很多情况的就不一一例举了,目前大概有2/3十种不同的表达。总之,我会尽可能的用人类友好的表达方式。

返回文字。距离今天最近的一个节假日安排。只考虑节假日和调休。

接口地址: http://lanfly.vicp.io/api/holiday/tts/next

@params: 没有参数

@return json: 返回可直接播放的文字。

{
    "code": 0,               // 0服务正常。-1服务出错
    "tts": "最近的一个节日是2018-04-05的清明节,还有11天。"
}

示例语句:

今年的所有节假日都过完了,2019年的节假日开发者还在偷懒。

最近的一个节日是2018-04-05的清明节,还有11天。

最近的一个节日是2018-04-28的劳动节,还有9天。在这之前先要劳动节前调休。

最近的一个节日是2018-04-28的劳动节,还有2天。不过记得明天先要劳动节前调休。

最近的一个节日是2018-04-28的劳动节,还有21天。明天要记得清明节调休。

最近的一个节日是2018-04-28的劳动节,还有22天。在这之前先把清明节调休完吧。

更多示例不一一例举了,会根据时间不同,调整明天,后天等的表达。

返回文字。回答明天放假吗。

接口地址: http://lanfly.vicp.io/api/holiday/tts/tomorrow

@params: 没有参数

@return json: 返回可直接播放的文字。

{
    "code": 0,               // 0服务正常。-1服务出错
    "tts": "明天是周一,今晚早点睡,上班别迟到了。"
}

示例语句:

明天是劳动节,趁着假期放松一下吧。

清明节才刚过完,明天都要清明节调休了,还想着放假呢!

明天是周六,放心睡吧。

今天才周二呢,先好好上班吧。

明天不放假,明天是劳动节前调休,马上就是劳动节了,开心吧!