Biblioteca TypeScript para consultar la API Solcast Async/prometed basada
Este módulo permite a los usuarios registrados consultar la API Solcast https://api.solcast.com.au. Deberá registrar su cuenta de usuario para obtener una clave API https://solcast.com.au/api/register. Sin una clave API, no podrá obtener con éxito resultados de API válidos.
Devuelve una promesa de PowerForecast en la ubicación de la entrada del punto latlng
export interface PowerForecast {
forecasts: Forecast [ ] ;
}
export interface Forecast {
period_end: Date ;
period: string ;
pv_estimate: number ;
} Devolver RadiozForCast Promise en la ubicación de la entrada del punto latlng
export interface RadiationForecast {
forecasts: Forecast [ ] ;
}
export interface Forecast {
ghi: number ;
ghi90: number ;
ghi10: number ;
ebh: number ;
dni: number ;
dni10: number ;
dni90: number ;
dhi: number ;
air_temp: number ;
zenith: number ;
azimuth: number ;
cloud_opacity: number ;
period_end: Date ;
period: string ;
}Puede usar variables de entorno estándar para mantener su clave API y no necesita pasar el objeto opcional {radiación | potencia} a cada función
Nombres de variables de entorno
SOLCAST_API_KEY
SOLCAST_API_URL
Accesible a través de la variable de entorno de proceso común.
process.env.SOLCAST_API_KEY
process.env.SOLCAST_API_URL
import * as solcast from 'solcast' ;
const point = solcast . latLng ( - 33.865143 , 151.209900 ) ; // Sydney, Australia
const radiationOptions = solcast . Options . radiation ( ) ;
radiationOptions . APIKey = 'YOUR API KEY HERE' ;
const promiseFn = solcast . Radiation . forecast ( point , radiationOptions ) ;
promiseFn . then ( results => {
console . log ( results ) ;
} )
. catch ( err => {
console . log ( err ) ;
} ) ; const solcast = require ( 'solcast' ) ;
const point = solcast . latLng ( - 33.865143 , 151.209900 ) ; // Sydney, Australia
const radiationOptions = solcast . Options . radiation ( ) ;
radiationOptions . APIKey = 'YOUR API KEY HERE' ;
const fn = async function ( ) {
return await solcast . Radiation . forecast ( point , radiationOptions )
} ;
fn ( ) . then ( results => {
console . log ( results ) ;
} )
. catch ( err => {
console . log ( err ) ;
} ) ; const solcast = require ( 'solcast' ) ;
const point = solcast . latLng ( - 33.865143 , 151.209900 ) ; // Sydney, Australia
const radiationOptions = solcast . Options . radiation ( ) ;
radiationOptions . APIKey = 'YOUR API KEY HERE' ;
const results = solcast . Radiation . forecast ( point , radiationOptions ) ;
results . then ( results => {
console . log ( results ) ;
} )
. catch ( err => {
console . log ( err ) ;
} ) ; { forecasts:
[ { ghi: 0,
ghi90: 0,
ghi10: 0,
ebh: 0,
dni: 0,
dni10: 0,
dni90: 0,
dhi: 0,
air_temp: 10,
zenith: 103,
azimuth: -88,
cloud_opacity: 3,
period_end: '2017-08-31T19:30:00.0000000Z',
period: 'PT30M' },
...
]
}
.env.json.sample a .env.jsonSOLCAST_API_KEY en el archivo json después del registro de https://solcast.com.au/api/register/