내손번역 크롬 확장 프로그램에 REST API를 제공하는 Application의 예시입니다.
npm install
npm start
npm test
아래에 REST API 예제가 설명되어 있습니다.
POST /users/signup
{
Authorization: `bearer ${accessToken}`,
Content-Type: application/json,
}
{
"email": "[email protected]",
"name": "whoever",
"keywords": ["react", "node", "express"],
"glossary": {
"component": "컴포넌트"
}
}
HTTP/1.1 200 OK
Status: 200 OK
Connection: close
Content-Type: application/json
{
"result": "ok"
"glossaryId": "glossaryId"
}
POST /users/login
{
Authorization: `bearer ${accessToken}`,
Content-Type: application/json,
}
{
"result": "ok",
"isUser": true,
"glossaryId": "glossaryId",
"message": "User found."
}
GET /users/:user_id/glossary
{
Authorization: `bearer ${accessToken}`,
Content-Type: application/json,
}
null
{
"result": "ok",
"data": {
"component": "컴포넌트",
"enzyme": "엔자임",
"state": "상태"
}
}
GET /translations/:user_id?page={ STRING }&limit={ STRING }
{
Authorization: `bearer ${accessToken}`,
Content-Type: application/json,
}
null
{
"result": "ok",
"data": [
{
"nanoId": "baedga",
"text": "As your app grows, you can catch a lot of bugs with typechecking.",
"translated": "앱이 성장함에 따라 유형 검사로 많은 버그를 잡을 수 있습니다.",
"url": "www.naver.com",
"createdAt": "2021-09-10T02:17:29.952Z"
}
]
}
POST /translations
{
Authorization: `bearer ${accessToken}`,
Content-Type: application/json,
}
{
"email": "[email protected]",
"translations": [
{
"text": "As your app grows, you can catch a lot of bugs with typechecking.",
"translated": "앱이 성장함에 따라 유형 검사로 많은 버그를 잡을 수 있습니다.",
"url": "http://www.naver.com",
"glossary": {
"react": "리액트"
},
"createdAt": "2021-09-10T02:08:27.098Z",
"nanoId": "V1StGXR8_Z5jdHi6B-myT"
}
]
}
{
"result": "ok"
}
POST /translations/:user_id
{
Authorization: `bearer ${accessToken}`,
Content-Type: application/json,
}
{
"text": "As your app grows, you can catch a lot of bugs with typechecking.",
"translated": "앱이 성장함에 따라 유형 검사로 많은 버그를 잡을 수 있습니다.",
"url": "http://www.naver.com",
"glossary": {
"react": "리액트"
},
"createdAt": "2021-09-10T02:08:27.098Z",
"nanoId": "V1StGXR8_Z5jdHi6B-myT"
}
{
"result": "ok"
}
GET /words/translated?words=USER_INPUT
{
Authorization: `bearer ${accessToken}`,
Content-Type: application/json,
}
null
{
"result": "ok",
"data": "다른 사람이 번역한 문장..."
}