Estoy tratando de obtener el índice de precios al consumidor sueco (Konsumentprisindex - KPI) del sitio web nacional de estadísticas (SCB) a través de una API abierta. Estoy usando React y Axios.
API: http://api.scb.se/OV0104/v1/doris/en/ssd/PR/PR0101/PR0101A/KPIFastAmed
No entiendo qué valores en la API me darán el KPI. response.data.variables[1].values[0] solo responde el año, pero no entiendo cómo recuperar el KPI de ese año específico.
¡Gracias de antemano, que tengas un gran día!
Esta es mi aplicación.js
import React,{useState} from 'react'; import './App.css'; import Axios from 'axios'; function App() { const [KPI, setKPI] = useState(""); const getKPI = () => { Axios.get("http://api.scb.se/OV0104/v1/doris/en/ssd/PR/PR0101/PR0101A/KPIFastAmed") .then((response) => { console.log(response) setKPI(response.data.title + " " + response.data.variables[1].values[0]) }); } return (<div><h1>{KPI}</h1><button onClick={getKPI}>M3</button></div>); } export default App;Como dice Docs, debe enviar una solicitud POST con un cuerpo que se vea así:
{ "query": [ { "code": "ContentsCode", "selection": { "filter": "item", "values": [ "000000KL" ] } }, { "code": "Tid", "selection": { "filter": "item", "values": ["2011"] } } ], "response": { "format": "json" } }Y la respuesta será:
{ "columns": [ { "code": "Tid", "text": "year", "type": "t" }, { "code": "000000KL", "text": "Konsumentprisindex (KPI) fastställda årsmedeltal, totalt, 1980=100", "type": "c" } ], "comments": [], "data": [ { "key": [ "2011" ], "values": [ "311.43" ] } ], "metadata": [ { "infofile": "PR0101", "updated": "2021-01-13T12:50:00Z", "label": "Konsumentprisindex (KPI) fastställda årsmedeltal, totalt, 1980=100 by year and observations", "source": "Statistics Sweden" } ] }Y puede cambiar los valores para obtener la información del año que necesita.