swsnu / swppfall2020

28 stars 17 forks source link

[HW4] article/:article_id/comment 관련 질문드립니다. #167

Open ray017 opened 4 years ago

ray017 commented 4 years ago

두가지 질문드리려 합니다.

  1. GET api/article/:article_id/comment에서 article_id에 해당하는 article에 속하는 comment만이 아니라 모든 comment를 넣는게 맞나요?
  2. 그리고 이 경우에 article_id에 해당하는 article이 없으면 404로 response 하는 것이 맞나요?
goalingball commented 4 years ago
  1. REST API 룰이나 과제 스펙으로 봤을 때 해당 article에 속하는 comment만 보여주는 게 맞습니다. 실제로 과제 스펙에서도 api/article/:article_id/comment로 GET을 했을 시 "Get comments of specified article"라고 명시되어 있습니다.
  2. 과제 스펙 상 GET은 제한하는 permission이 없기 때문에 (401이나 403에는 해당하지 않음) 404 (Not Found)가 맞을 겁니다.
kooyunmo commented 4 years ago

위의 답변이 정확합니다. 감사합니다.

수정: article_id에 해당하는 article이 없으면 404로 리턴하는 것은 맞지만 그 이전에 authentication check를 해주셔야 합니다.

goalingball commented 4 years ago

제가 로그아웃을 안 하고 위의 코멘트를 작성했는데 이 계정의 주인은 ChanwooLucioLee입니다. 다음부터는 로그인된 계정을 잘 확인하고 글을 작성하겠습니다.

jaewooklee93 commented 4 years ago

@kooyunmo 위의 @goalingball 님의 답변을 보고 질문드립니다.

로그인하지 않은 사용자가, 존재하지 않는 article id에 대해 GET을 수행하는 경우, 404(Not Found)보다 401(Unauthorized)가 우선적으로 적용되어 401을 반환하여야 하는 것으로 이해하고 있습니다

Among these global specifications, the prior specification has the higher priority. For example, if someone requests for a non-existing article without signing in, response with 401 instead of 404.

과제 스펙상 GET도 제한하는 permission이 있다고 보아야 하지 않는지 궁금합니다

kooyunmo commented 4 years ago

@jaewooklee93 @goalingball @ray017 제가 404를 리턴하라는 부분만 보고 그렇다고 답변을 해버렸네요. 실수가 있었습니다.

  1. 과제 스펙 상 GET은 제한하는 permission이 없기 때문에 (401이나 403에는 해당하지 않음) 404 (Not Found)가 맞을 겁니다.

@jaewooklee93 님께서 말씀해주신 것과 같이 이번 과제에서 signup과 token을 제외하고는 모두 401 authentication 체크를 해주어야합니다.