Written by
    
        Dohu Jeon
    
    
      
on
  on
[Vue.js] Swagger API로 노트 데이터 생성과 조회
Swagger Api 문서
Swagger Api (서버 localhost:3000포트에서 실행중)에서 노트 데이터 조회테스트를 위한 임시 노트 데이터를 만든다.
테스트할 ID의 인증 토큰을 Authorize버튼을 눌러 인증을 해준다.
해줘야 해당 테스트할 유저에게 노트 데이터를 넣어 줄 수 있다.

값을 붙여 넣고 Authorize누르면 인증이 돼서 데이터를 집어넣을 수 있는 권한이 생긴다.

POST /posts (게시물을 한개 생성하는 API)에 Try it out을 눌러 임시로 title과 contents를 넣는다.

201Code로 Response가 아래와 같이 나오면 노트 게시물 생성 완료다.

axios로 노트데이터 불러오기 Function
axios를 이용하여 노트 데이터를 불러오는 Function을 선언한다.
api/index.js
// 학습노트 데이터 조회 API
function fetchPost() {
  return instance.get('posts');
}
axios로 노트데이터 불러오기 Function 호출
views/MainPage/vue에서 fetchPost함수를 호출하여 데이터를 불러온다.
불러온 후 배열에 담아 화면에 나타낸다.
views/MainPage/vue
<template>
  <div>
    <div class="main list-container contents">
      <h1 class="page-header">Today I Learned</h1>
      <ul>
        <li v-for="postItem in postItems" :key="postItem._id">
          <div class="post-title">
            
          </div>
          <div class="post-contents">
            
          </div>
          <div class="post-time">
            
          </div>
        </li>
      </ul>
    </div>
  </div>
</template>
<script>
import { fetchPost } from '@/api/index';
export default {
  data() {
    return {
      postItems: [],
    };
  },
  methods: {
    async fetchData() {
      const { data } = await fetchPost();
      console.log(data.posts);
      this.postItems = data.posts;
    },
  },
  // 페이지가 생성되자마자 호출할 함수
  created() {
    this.fetchData();
  },
};
</script>
화면에 아까 Swagger에서 생성한 노트 데이터를 볼 수 있다.

참고로 postItem. 인자들은 Swagger Api창에서 보는 인자들로 json이 구성되어있으므로 참고해서 보여주면 된다.

Discussion and feedback