Class: CWB::CWBApi
- Inherits:
-
Object
- Object
- CWB::CWBApi
- Defined in:
- lib/weatai/cwb_api.rb
Overview
Service for all weather API calls
Constant Summary collapse
- URL_cwb =
'http://opendata.cwb.gov.tw/opendataapi'
- URL_psi =
'http://opendata.epa.gov.tw/webapi/api/rest/datastore/355000000I-000001/'
Class Method Summary collapse
- .config ⇒ Object
- .config=(credentials) ⇒ Object
- .raw_info1(dataid) ⇒ Object
- .raw_info2(dataid) ⇒ Object
- .raw_info3(dataid) ⇒ Object
Class Method Details
.config ⇒ Object
15 16 17 18 19 20 21 22 |
# File 'lib/weatai/cwb_api.rb', line 15 def self.config return @config if @config @config = { dataid1: ENV['DATA_ID1'], dataid2: ENV['DATA_ID2'], key: ENV['AUTH_KEY'], format: ENV['FORMAT'], token: ENV['TOKEN']} end |
.config=(credentials) ⇒ Object
11 12 13 |
# File 'lib/weatai/cwb_api.rb', line 11 def self.config=(credentials) @config ? @config.update(credentials) : @config = credentials end |
.raw_info1(dataid) ⇒ Object
24 25 26 27 28 29 30 |
# File 'lib/weatai/cwb_api.rb', line 24 def self.raw_info1(dataid) info_response = HTTP.get(URL_cwb, params: { dataid: config[:dataid1], authorizationkey: config[:key]}) Hash.from_xml(info_response) end |
.raw_info2(dataid) ⇒ Object
32 33 34 35 36 37 38 |
# File 'lib/weatai/cwb_api.rb', line 32 def self.raw_info2(dataid) info_response = HTTP.get(URL_cwb, params: { dataid: config[:dataid2], authorizationkey: config[:key]}) Hash.from_xml(info_response) end |
.raw_info3(dataid) ⇒ Object
40 41 42 43 44 45 46 |
# File 'lib/weatai/cwb_api.rb', line 40 def self.raw_info3(dataid) info_response = HTTP.get(URL_psi, params: { format: config[:format], token: config[:token]}) Hash.from_xml(info_response) end |