気象庁防災気象情報API - 気象庁ホームページから防災気象情報を取得するAPI
npm install @api-types/jma-bosai
> 気象庁防災気象情報API - 気象庁ホームページから防災気象情報を取得するAPI
- Using npm:
``sh`
$ npm install @api-types/jma-bosai @aspida/axios axios
- Using Yarn:
`sh`
$ yarn add @api-types/jma-bosai @aspida/axios axios
utils/apiClient.ts`ts
import api from "@api-types/jma-bosai"
import aspida from '@aspida/axios'
export const apiClient = api(aspida())
`
参考サイト:https://qiita.com/e_toyoda/items/7a293313a725c4d306c0
utils/himawariClient.ts`ts
import { apiClient } from "./apiClient"
export const himawariClient = apiClient.himawari.data.satimg
`
index.ts`ts
import { BAND_PROD } from '@api-types/jma-bosai'
import { himawariClient } from "./utils/himawariClient"
;(async () => {
const targetTimes = await himawariClient.targetTimes_fd_json.$get()
console.log(targetTimes) // [{"basetime" : "20210224190000", "validtime" : "20210224190000"}...]
const img = new Image()
img.src = himawariClient
._basetime(targetTimes[0].basetime).fd._validtime(targetTimes[0].validtime)._band_prod(BAND_PROD.VISIBLE)._z(3)._x(7)._y_jpg(3).$path()
document.body.appendChild(img)
})()
`
baseURL: https://www.jma.go.jp/bosai
/himawari/data/satimg/_basetime/fd/_validtime/_band_prod/_z@number/_x@number/_y@number.jpg
`ts`
/**
* フルディスク画像API
*
* _basetime: 基準時刻 TargetTime['basetime']
* _validtime: 撮影時刻 TargetTime['validtime']
* _band_prod: 画像種別 BAND_PROD
* _z: ズームレベル 3-5
* _x: タイルのX座標
* _y: タイルのY座標
*/
type Methods = {
/* フルディスク画像をJPGで取得 /
get: {
resBody: ArrayBuffer
}
}/himawari/data/satimg/_basetime/jp/_validtime/_band_prod/6/_x@number/_y@number.jpg
`ts`
/**
* 日本付近画像API
*
* _basetime: 基準時刻 TargetTime['basetime']
* _validtime: 撮影時刻 TargetTime['validtime']
* _band_prod: 画像種別 BAND_PROD
* _x: タイルのX座標
* _y: タイルのY座標
*/
type Methods = {
/* 日本付近画像をJPGで取得 /
get: {
resBody: ArrayBuffer
}
}/himawari/data/satimg/targetTimes_fd.json
`ts`
/* 撮影時刻API /
type Methods = {
/* 撮影時刻一覧を取得 /
get: {
resBody: TargetTime[]
}
}/himawari/data/satimg/targetTimes_jp.json
`ts`
/* 日本付近の撮影時刻API /
type Methods = {
/* 日本付近の撮影時刻一覧を取得 /
get: {
resBody: TargetTime[]
}
}/jmatile/data/nowc/_basetime/none/_validtime/surf/hrpns/_z@number/_x@number/_y@number.png
`ts`
/**
* 降水ナウキャスト画像API
*
* _basetime: 基準時刻 TargetTime['basetime']
* _validtime: 実況時間または予報時刻 TargetTime['validtime']
* _z: ズームレベル 4-10
* _x: タイルのX座標
* _y: タイルのY座標
*/
type Methods = {
/* 降水ナウキャスト画像をJPGで取得 /
get: {
resBody: ArrayBuffer
}
}/jmatile/data/nowc/targetTimes_N1.json
`ts`
/* 降水ナウキャストの実況時刻API /
type Methods = {
/* 降水ナウキャストの実況時刻一覧を取得 /
get: {
resBody: TargetTime[]
}
}/jmatile/data/nowc/targetTimes_N2.json
`ts`
/* 降水ナウキャストの予報時刻API /
type Methods = {
/* 降水ナウキャストの予報時刻一覧を取得 /
get: {
resBody: TargetTime[]
}
}
TargetTime
`ts`
/* 撮影時刻 /
type TargetTime = {
basetime: string
validtime: string
}
BAND_PROD
`ts``
/* 画像種別 /
const BAND_PROD = {
/* 可視画像 /
VISIBLE: 'B13/TBB',
/* 赤外画像 /
INFRARED: 'B03/ALBD',
/* 水蒸気画像 /
WATER_VAPOR: 'B08/TBB',
/* トゥルーカラー再現画像 /
TRUE_COLOR: 'REP/ETC',
/* 雲頂強調画像 /
CLOUD_TOP: 'SND/ETC'
} as const
@api-types/jma-bosai is licensed under a MIT License.