【Vue.js】axios를 이용해 WebAPI로부터 데이터를 취득하는 방법 【메모】
소개
첫 투고&개인 메모(빠진 포인트 메모)의 생각으로 쓰고 있습니다.
졸라 문장 & 내용이 됩니다만, 그 점 양해 바랍니다.
이 기사를 읽으면 Vue와 axios를 사용하여 API 데이터를 얻는 방법을 알 수 있습니다.
개발 환경 및 사용 API
※모두 스크립트(CDN)로 읽어들입니다
→도도부현 데이터나, 도도부현마다의 데이터를 취득하는데 사용합니다
막상 구현
파일 준비
index.html을 준비한다.
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>TEST</title>
<!-- Bootstrap -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"
integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
</head>
<body>
<div id="app">
</div>
<script src="https://cdn.jsdelivr.net/npm/vue"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/axios/0.18.0/axios.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.3/Chart.js"></script>
<script>
new Vue({
el: '#app',
data() {
return {
//APIデータを受け取る配列を定義
prefectures: null,
}
},
mounted() {
//実行したい処理を書く
}
})
</script>
</body>
</html>
도도부현의 취득을 해본다
axios를 사용하여 API 데이터를 검색하고 싶지만 RESAS API의 경우,
API 키 설정 정보
이 API에 액세스하려면 API 키를 요청 헤더 X-API-KEY로 설정해야합니다.
요청 헤더에 API 키가 설정되어 있지 않으면 요청한 데이터가 반환되지 않고 403 Forbidden 오류가 발생합니다.
라고 기술이 있어, API 취득시에 요구 헤더에 API Key를 설정하지 않으면 안됩니다.
index.html
<div id="app">
<!-- 返ってくるAPIデータを表示させる -->
{{ this.prefectures }}
</div>
mounted() {
var prefectures_url = 'https://opendata.resas-portal.go.jp/api/v1/prefectures';
axios
.get(prefectures_url)
.then(response => (this.prefectures = response));
}
↑요청 헤더를 설정하지 않고 취득하려고 하면, 이하와 같은 느낌으로 403 에러가 되어 버립니다.
index.html
이것은 get 메소드의 제 2 인수에 APIKEY를 건네주면 API 데이터의 취득을 할 수 있게 됩니다.
mounted() {
var prefectures_url = 'https://opendata.resas-portal.go.jp/api/v1/prefectures';
axios
.get(prefectures_url, { headers: { 'X-API-KEY': '各自で取得したKEY' } })
.then(response => (this.prefectures = response));
}
출력 결과↓
안전한 가치를 얻을 수있었습니다! !
이건 전혀 찾아도 찾지 못하고 2,3일 정도 빠졌어요...
취득한 데이터입니다만, 데이터를 취급하기 쉽도록 이하와 같이 수정.
mounted() {
var prefectures_url = 'https://opendata.resas-portal.go.jp/api/v1/prefectures';
axios
.get(prefectures_url, { headers: { 'X-API-KEY': '各自で取得したKEY' } })
.then(response => (this.prefectures = response.data.result));
}
이런 느낌에 필요한 정보만 얻을 수 있었습니다!
참고로 한 공식 문서: htps // jp. 아 js. 오 rg / v2 / 코오 k 보오 k / 우신 g - 아오 s - 콘스메 아피 s. HTML
끝에
지금부터는, 이 취득한 데이터를 바탕으로 무언가 작성하는 기사를 쓰고 싶습니다만, 나중에 갱신해 가고 싶습니다.
읽어 주셔서 감사합니다!
Reference
이 문제에 관하여(【Vue.js】axios를 이용해 WebAPI로부터 데이터를 취득하는 방법 【메모】), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ckjets/items/9f3e31f2bd7595af13a3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)