codestates / codestates/BookDam
22.01.11 Dev-Log
- Dominant language
- JavaScript
- Stars
- 1
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
### 오늘은 어떻게 프로젝트에 기여했나요?
- 네이버 도서 검색 api에서 받는 썸네일의 크기가 작아 웹에서 키웠을 때 깨짐이 있어 알라딘 도서 검색 api로 변경했습니다.
알라딘 도서 검색 api 이용 방법
- 1. 알라딘 회원가입 후 TTB 가입 및 도메인 신청(도메인이 없을 경우 신청하는 사람의 개인 블로그 도메인으로도 신청가능)
- 2. 블로그 도메인을 업로드하면 TTB 인증값이 할당되고 영업일 기준 1~2일 후 승인되면 이용 가능
- 3. 요청 도메인에 TTB키를 넣고, 쿼리에는 찾길 원하는 값, 쿼리타입에는 찾는 타겟(저는 제목!), 솔트는 정렬 대상이 될 값, 커버는 썸네일의 크기, 아웃풋은 요청이 성공적으로 이뤄질 경우 받는 데이터의 형식
- 4. JSON 파일의 형태가 이용하기 불편해서 XML 파일로 받아서 JSON으로 파싱 후 사용했습니다.
### 오늘의 프로젝트에서 힘든 점은 무엇인가요?
```js
const api_url = `https://www.aladin.co.kr/ttb/api/ItemSearch.aspx?ttbkey=${ttbkey}&Query=${encodeURI(req.query.query)}&QueryType=Title&SearchTarget=Book&Sort=Title&Cover=Big&Output=XML`
axios.get(api_url)
.then((result) => {
parser(result.data, function (err, data) {
res.send(data.object.item)
})
})
.catch((error) => {
res.status(400).json({message : 'failure', error : error})
})
```
알라딘 api에서 JSON 형태로 파일을 받았을 때 관리가 어려워서 XML 파일로 받고 JSON으로 변환해서 클라이언트에 전송하는 코드를 구현하는 것이 쉽지 않았습니다.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.