免費好用的節假日API

使用需知

提莫的神祕商店提供 http://timor.tech/api/holiday
獲取指定日期的節假日信息

接口地址:http://timor.tech/api/holiday/info/$date @params $date:
指定日期的字符串,格式 ‘2018-02-23’。可以省略,則默認服務器的當前時間。 @return json:
如果不是節假日,holiday字段爲null。


    {
      "code": 0,              // 0服務正常。-1服務出錯
      "type": {
        "type": enum(0, 1, 2), // 節假日類型,分別表示 工作日、週末、節日。
        "name": "週六",         // 節假日類型中文名,可能值爲 週一 至 週日、假期的名字、某某調休。
        "week": enum(1 - 7)    // 一週中的第幾天。值爲 1 - 7,分別表示 週一 至 週日。
      },
      "holiday": {
        "holiday": false,     // true表示是節假日,false表示是調休
        "name": "國慶前調休",  // 節假日的中文名。如果是調休,則是調休的中文名,例如'國慶前調休'
        "wage": 1,            // 薪資倍數,1表示是1倍工資
        "after": false,       // 只在調休下有該字段。true表示放完假後調休,false表示先調休再放假
        "target": '國慶節'     // 只在調休下有該字段。表示調休的節假日
      }
    }

示例:
http://timor.tech/api/holiday/info/2018-3-2
http://timor.tech/api/holiday/info/2018-03-02
http://timor.tech/api/holiday/info


批量查詢指定日期節假日信息

接口地址:http://timor.tech/api/holiday/batch?d=$date
@params $date: 指定日期的字符串,多個日期之間用逗號,隔開。格式 ‘2018-02-23’。
@return json: 返回以日期爲key的對象。


   {
     "code": 0,               // 0服務正常。-1服務出錯
     "holiday": {             // 傳過來的日期是什麼,key就是什麼。傳多少個就有多少個。
       "2017-10-01": {        // holiday的值都是一致的
         "holiday": true,
         "name": "國慶節",
         "wage": 2
       },
       "2017-9-12": null      // 如果不是節假日,則爲null
     }
   }

示例:
http://timor.tech/api/holiday/batch?d=2018-3-1
http://timor.tech/api/holiday/batch?d=2017-10-01,2018-6-01,2018-10-1

獲取指定日期的下一個節假日(如果在放假前有調休,也會返回)

接口地址: http://timor.tech/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://timor.tech/api/holiday/next/2018-6-1
http://timor.tech/api/holiday/next/2018-09-28
http://timor.tech/api/holiday/next

獲取指定年份或年月份的所有節假日信息。默認返回當前年份的所有信息。

接口地址: http://timor.tech/api/holiday/year/$date?
@params $data: 指定年份或年月份,格式 ‘2019-02’ ‘2019-2’ 或者 ‘2019’。可以省略,則默認服務器當前時間的年份。
@return json: 返回指定年份或年月份的所有節假日,以日期作爲key,格式:mm-dd。如果沒有該年份或月份,則返回空對象。注意目前只配置了最多比當前時間往後一年的節假日。


    {
      "code": 0,               // 0服務正常。-1服務出錯
      "holiday": {
        "10-01": {
          "holiday": true,     // 該字段一定爲true
          "name": "國慶節",     // 節假日的中文名。
          "wage": 3,           // 薪資倍數,3表示是3倍工資
          "date": "2018-10-01" // 節假日的日期
        },
        "10-02": {
          "holiday": true,     // 該字段一定爲true
          "name": "國慶節",     // 節假日的中文名。
          "wage": 3,           // 薪資倍數,3表示是3倍工資
          "date": "2018-10-01" // 節假日的日期
        }
      }
    }

示例:
http://timor.tech/api/holiday/year
http://timor.tech/api/holiday/year/2018
http://timor.tech/api/holiday/year/2019-02

下面是高級API。返回人類可閱讀的文字,適用於語音交互中。

例如:使用文字轉語音,把返回的結果直接播放出來。適用於VUI語音交互中使用。
返回文字。距離今天最近的一個放假安排。週六週末、調休、節假日都會考慮,比較全面的放假安排。

接口地址: http://timor.tech/api/holiday/tts
@params: 沒有參數
@return json: 返回可直接播放的文字。


     {
      "code": 0,       // 0服務正常。-1服務出錯
      "tts": "明天就是週六了,今天努力工作哦!。最近的一個節日是清明節。還要12天。早着呢!"
    }

示例語句:
今天是週末,放鬆一下吧!
今天是國慶節前調休,明天就是國慶節了,加油!
你在想什麼!今天就是國慶節啊。
清明節纔剛剛過完,今天是清明節調休,老老實實上班吧。
很遺憾的告訴您,這週六要勞動節前調休,不過週日就是勞動節了。
很遺憾的告訴您,這週六和週日都要國慶節前調休。再過3天是國慶節。
明天就是中秋節了,開不開心?不過記得週日要中秋節調休,設置好鬧鐘,別玩太嗨。
明天就是週六了,今天努力工作哦!最近的一個節日是清明節。還要12天。早着呢!
還有很多情況的就不一一例舉了,目前大概有2/3十種不同的表達。總之,我會盡可能的用人類友好的表達方式。


返回文字。距離今天最近的一個節假日安排。只考慮節假日和調休。

接口地址: http://timor.tech/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://timor.tech/api/holiday/tts/tomorrow
@params: 沒有參數
@return json: 返回可直接播放的文字。


    {
      "code": 0,        // 0服務正常。-1服務出錯
      "tts": "明天是週一,今晚早點睡,上班別遲到了。"
    }

示例語句:
明天是勞動節,趁着假期放鬆一下吧。
清明節纔剛過完,明天都要清明節調休了,還想着放假呢!
明天是週六,放心睡吧。
今天才週二呢,先好好上班吧。
明天不放假,明天是勞動節前調休,馬上就是勞動節了,開心吧!


瀏覽器端使用 ajax 請求節假日服務示例代碼

    // 注意:dataType: json 就行了,別寫成 jsonp 了
    // 使用 jQuery,其它庫請查看api
    $.ajax({
      type: 'get',
      url: 'http://timor.tech/api/holiday/tts',
      dataType: 'json',
      success: function (data) {
        console.log('success', data)
      },
      error: function (xhr, textstatus, error) {
        console.log('error', textstatus, error)
      }
    })

查看詳情 提莫的神祕商店

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章