그누보드에 대한 RESTFUL API Doc #2 정보
그누보드에 대한 RESTFUL API Doc #2관련링크
본문
이전 글 https://sir.kr/so_app/1914 에 이어서 swagger doc도 배우는데 오래 걸리네요.
그래서 그냥 만들어 봤습니다. 링크는 @그누위즈 님을 참조 했습니다.
그누보드
g5_auth
g5_autosave
g5_board
GET /boards
~~GET /board[s]/settings~~
g5_board_file
GET /board/[bo_table]/[wr_id]/files
g5_board_good
GET /board/[bo_table]/[wr_id]/good
g5_board_new
GET /boards/new_articles
GET /boards/new_comments
g5_cert_history
g5_config
GET /configs
g5_content
GET /contents
GET /contents/[co_id]
g5_faq
GET /faqs
GET /faqs/[fa_id]
g5_faq_master
GET /faqsgroup/[fm_id]
g5_group
GET /groups
g5_group_member
g5_login
g5_mail
g5_member
GET /members
GET /member/[mb_id]
g5_member_social_profiles
g5_memo
g5_menu
GET /menus
g5_new_win
g5_point
GET /member/[mb_id]/points
g5_poll
g5_poll_etc
g5_popular
g5_qa_config
g5_qa_content
g5_scrap
GET /member/[mb_id]/scraps
g5_uniqid
g5_visit
g5_visit_sum
g5_write_[bo_table]
게시판 당 하나씩 생성되어 글과 댓글이 저장되는 테이블
GET /board/[bo_table]
GET /board/[bo_table]/[wr_id]
GET /board/[bo_table]/[wr_id]/good
GET /board/[bo_table]/[wr_id]/files
GET /board/[bo_table]/[wr_id]/comments
GET /board/[bo_table]/[wr_id]/comment/[wr_id]
GET /board/[bo_table]/[wr_id]/comment/[wr_id]/good
GET /board/[bo_table]/[wr_id]/comment/[wr_id]/files
공감
5
5
댓글 12개
잘 모르는 필드도 있고해서, 우선 생각나는 것만(GET만) 적어 봤습니다. 혹시에 앱 또는 RESTFul에 관심이 있으신분은 댓글로 필요한 것 또는 고려해야 될 API 를 알려주세요.
즉
GET /board/[bo_table]/group 하면 해당 게시판의 그룹을 읽어 오는 것이죠
GET /board/[bo_table]/group/members 하면 게시판 그룹의 그룹멤버를 읽어 오는 것이죠.
RESTFul의 단점이 쓸데 없이 많은 트랙픽을 유발한다고 합니다.
그래서 요즘은 Graphql이란 것을..
{ board: [bo_table] {
id,
group,
group_member
}
대략 필요한 필드를 보내면 한번에 정리해서 보내주는 식입니다.
즉
GET /board/[bo_table]/group 하면 해당 게시판의 그룹을 읽어 오는 것이죠
GET /board/[bo_table]/group/members 하면 게시판 그룹의 그룹멤버를 읽어 오는 것이죠.
RESTFul의 단점이 쓸데 없이 많은 트랙픽을 유발한다고 합니다.
그래서 요즘은 Graphql이란 것을..
{ board: [bo_table] {
id,
group,
group_member
}
대략 필요한 필드를 보내면 한번에 정리해서 보내주는 식입니다.
요즘 API사용을 고려중인데 많은 도움이 될것 같군요.
대단하세요.
감사합니다.
대단하세요.
감사합니다.
@써맨 필요한 것이 있으면 알려주세요.
우왕 대단하십니다...
일단 눈에 안보이는건 쪽지나 스크랩 정도인거 같네요
나중에 시간나면 좀 더 꼼꼼히 살펴보겠습니다.
그리고 관리자권한으로 봐야할것들은 토큰체크 되는건가요?? ㅋ ...
덧) 포인트도욤
일단 눈에 안보이는건 쪽지나 스크랩 정도인거 같네요
나중에 시간나면 좀 더 꼼꼼히 살펴보겠습니다.
그리고 관리자권한으로 봐야할것들은 토큰체크 되는건가요?? ㅋ ...
덧) 포인트도욤
@Rido 링크에 업데이트 하고 있습니다.
JWT 토큰 발행하고 Postman Authorization에 Bearer토큰에 넣어서 체크됩니다.
GET /member/[mb_id]/autosave
GET /member/[mb_id]/points
GET /member/[mb_id]/scraps
GET /member/[mb_id]/memo/[me_recev_mb_id]
GET /member/[mb_id]/memo/[me_send_mb_id]
그리고 확장자도 따로 읽어 볼까 합니다.
GET /member/[mb_id]/exts
GET /member/[mb_id]/ext/[mb_?]
프런트엔드단과 어느정도 맞춰서 API가 규정이 되면 좋은데,
실력이 양쪽을 왔다갔다할 정도는 안되서..
backend만들면 잊어버리고, 다시 프런트엔드로 ㅠㅠ
JWT 토큰 발행하고 Postman Authorization에 Bearer토큰에 넣어서 체크됩니다.
GET /member/[mb_id]/autosave
GET /member/[mb_id]/points
GET /member/[mb_id]/scraps
GET /member/[mb_id]/memo/[me_recev_mb_id]
GET /member/[mb_id]/memo/[me_send_mb_id]
그리고 확장자도 따로 읽어 볼까 합니다.
GET /member/[mb_id]/exts
GET /member/[mb_id]/ext/[mb_?]
프런트엔드단과 어느정도 맞춰서 API가 규정이 되면 좋은데,
실력이 양쪽을 왔다갔다할 정도는 안되서..
backend만들면 잊어버리고, 다시 프런트엔드로 ㅠㅠ
늘 귀한 시도에 수고많으십니다. 저도 실력이 되면 동참해보고 싶은데 아직...ㅎㅎ;
@xpem 저도 실력은 안됩니다. 그누보드에 대햇 잘 모르지만, 프런트엔드단에서 이런것이 필요하다고 하면 백엔드에서 미리 고려해 놓는다는 것이죠. 그누보드 게시판 프로그램할때 필요한 부분 뭐가 있는지 체크해 주세요
해당 기준으로 API를 제작중이신건가요?
Vue 그누보드 백앤드가 단순히 동작 가능만 생각해서 만들었다보니
아예 처음부터 다시 구성할 생각인데
제 임의의 규칙보다는
어느정도 알려져있는대로 문서대로 제작하는것이 나은거 같아 괜찮으시다면 게시글을 어느정도 참조하려 합니다
Vue 그누보드 백앤드가 단순히 동작 가능만 생각해서 만들었다보니
아예 처음부터 다시 구성할 생각인데
제 임의의 규칙보다는
어느정도 알려져있는대로 문서대로 제작하는것이 나은거 같아 괜찮으시다면 게시글을 어느정도 참조하려 합니다
@볼피드 지금까지 공부한 것을 기반으로(이론적으로) Doc을 먼저 만들어 놓고. (그래서 버전0.2) 조금씩 구현해 볼려고 합니다.
워낙 고려해야 될 것도 많고, 그누보드쪽도 아직 잘 모르다 보니,
조금씩 구현해 가면서, 서로 업그레이드 해 가면 좋을 것 같습니다.
능력이 안되니, 백엔드와 프런트엔드 모두 해 가면서 이쪽에서 필요한 것 저쪽에서 해 주고, 저쪽에서 구현하기 힘든것은 아래쪽에서 해 주면 좋은데.. 그게 힘드네요.
그래서, 이렇게라도 Document를 해 놓으면 모두가 도움이 되지 않을까요?
냑에서도 6.0나오는 시점에 RESTful을 지원한다고 하면, 이것도 하나의 기준이 될 수도 있고,
기능적으로 큰 문제가 없다고 하면, 굳이 다르게 갈 필요도 없겠죠..
프런트단 구현해 가면서 필요한 기능이 있으면, 같이 토의해 가면서 만들었으면 합니다.
워낙 고려해야 될 것도 많고, 그누보드쪽도 아직 잘 모르다 보니,
조금씩 구현해 가면서, 서로 업그레이드 해 가면 좋을 것 같습니다.
능력이 안되니, 백엔드와 프런트엔드 모두 해 가면서 이쪽에서 필요한 것 저쪽에서 해 주고, 저쪽에서 구현하기 힘든것은 아래쪽에서 해 주면 좋은데.. 그게 힘드네요.
그래서, 이렇게라도 Document를 해 놓으면 모두가 도움이 되지 않을까요?
냑에서도 6.0나오는 시점에 RESTful을 지원한다고 하면, 이것도 하나의 기준이 될 수도 있고,
기능적으로 큰 문제가 없다고 하면, 굳이 다르게 갈 필요도 없겠죠..
프런트단 구현해 가면서 필요한 기능이 있으면, 같이 토의해 가면서 만들었으면 합니다.
@볼피드 참고로 현재는 노드로 보고 있습니다. 서버가 웹호스팅으로 안되는 단점은 있지만,
이 언어가 조금 편하네요..
이게 어느정도 구현되면, 웹호스팅에서 쓸수 있게, 예전에 했던 Slim을 한번더 도전해 보고 싶습니다.
https://www.apachezone.com/member_pds/18
이 언어가 조금 편하네요..
이게 어느정도 구현되면, 웹호스팅에서 쓸수 있게, 예전에 했던 Slim을 한번더 도전해 보고 싶습니다.
https://www.apachezone.com/member_pds/18
@마젠토 저는 PHP로 개발하려 합니다.
우선 웹호스팅 사용 목적이 크기 때문이고
php-jwt, php router 중 하나를 사용하고 언젠가 mysqli도 지원이 종료될 함수이고 sql injection이나 보안쪽에서 pdo가 낫다고해서, pdo쪽으로 해서 개발 중입니다.
오늘 짬이 잠깐 나서 3~4시간정도 제작했는데 로그인 부분이랑 jwt 발행 부분을 연결 시켰고 위 글에 있는 주소 가이드라인대로 한 30~40%정도 제작한것 같네요.
vue로 바꾸면서 그냥 common.php를 활용해서 기존 그누보드 함수를 최대한 활용하려 했는데
그누보드의 db구조가 API화 하기 어려운것도 있고, 소스분석도 귀찮아지다보니 결국 코드가 난잡해지더군요.
그누보드의 경우 게시판을 불러 올 때 게시판 설정(config, board) 등 여러가지 참조하는 테이블이 많은데 게시판 불러올때마다 해당 값을 불러오는것도 비효율적이라 필요할 때 보안상 클라이언트에 값을 저장해도 되는 부분과 백앤드 쪽에서 무조건 처리해야하는 부분 등 구분 지어서 깔끔하게 개발하려 합니다.
우선 웹호스팅 사용 목적이 크기 때문이고
php-jwt, php router 중 하나를 사용하고 언젠가 mysqli도 지원이 종료될 함수이고 sql injection이나 보안쪽에서 pdo가 낫다고해서, pdo쪽으로 해서 개발 중입니다.
오늘 짬이 잠깐 나서 3~4시간정도 제작했는데 로그인 부분이랑 jwt 발행 부분을 연결 시켰고 위 글에 있는 주소 가이드라인대로 한 30~40%정도 제작한것 같네요.
vue로 바꾸면서 그냥 common.php를 활용해서 기존 그누보드 함수를 최대한 활용하려 했는데
그누보드의 db구조가 API화 하기 어려운것도 있고, 소스분석도 귀찮아지다보니 결국 코드가 난잡해지더군요.
그누보드의 경우 게시판을 불러 올 때 게시판 설정(config, board) 등 여러가지 참조하는 테이블이 많은데 게시판 불러올때마다 해당 값을 불러오는것도 비효율적이라 필요할 때 보안상 클라이언트에 값을 저장해도 되는 부분과 백앤드 쪽에서 무조건 처리해야하는 부분 등 구분 지어서 깔끔하게 개발하려 합니다.
@볼피드 PHP는 아무리 봐도 어려운 것 같아서.. 필요한 부분(변경해야 될 부분) 있으면 알려주세요.
Document에 입력 출력에 대한 정보도 어느정도 넣어 두면, 프로그램하는 사람입장에서는 편하지 않을 까요.
1차로는 nodejs로 구현해가면서 문서화하고. 최종적으로는 아예 DB구조를 뜯어 고쳐가면서 그누보드도 수정했으면 하는 꿈만 가지고 있습니다.
Document에 입력 출력에 대한 정보도 어느정도 넣어 두면, 프로그램하는 사람입장에서는 편하지 않을 까요.
1차로는 nodejs로 구현해가면서 문서화하고. 최종적으로는 아예 DB구조를 뜯어 고쳐가면서 그누보드도 수정했으면 하는 꿈만 가지고 있습니다.