인증 절차 후에 RESTful 객체를로드하는 가장 좋은 방법을 알고 싶습니다.인증 후 RESTful 객체로드하기
예를 들어 로그인 한 후 인물, 장소 및 기타 계정 관련 정보의 목록을 검색해야하는 앱이 있습니다. 다음 중 베스트 프랙티스는 무엇입니까?
. 응용 프로그램이 호출 후 POST/API/V1/로그인은 반환해야합니다 :
이{
"token": "xxxxx.yyyyyyy.xzzzzzzzzz",
"persons": [
{"id": 1, "name": "John"},
{"id": 2, "name": "Paul"},
{"id": 3, "name": "George"},
{"id": 3, "name": "Ringo"}
],
"places": [
{"id": 1, "name": "London"},
{"id": 2, "name": "New York"},
],
"lastLogin": "2017-09-10 13:00:00"
}
이 방법은 응용 프로그램 개발자에 쉽게하기 위해 표시가 별도로 얻을 통화를 할 필요가 없기 때문에. 그러나 그것은 밀접하게 결합 된 것처럼 보입니다.
b. 아니면 단지
{
"token": "xxxxx.yyyyyyy.xzzzzzzzzz"
}
을 반환해야하고, 응용 프로그램은 예를 들어, 사용 별도로 다른 데이터를로드한다
GET /api/v1/persons
GET /api/v1/places
GET /api/v1/lastlogin
이 방법은 깨끗한 것 같다,하지만 앱 개발자를위한 어렵게 할 수있다. 특히 많은 다른 모델을로드하는 경우 요청 오버 헤드가 추가 될 수 있습니다.
c. 또는 데이터가있는 토큰을 반환하는 /api/v1/loginWithData이라는 호출이 있어야하고 별도의 토큰을 반환하는 /api/v1/login이라는 별도의 호출을 사용해야합니까? 이 방법은 두 가지 모두에서 최상이지만 API 네임 스페이스가 복잡해 보입니다.
설명 할 수있는 링크를 보내 주시면 감사하겠습니다. 배울 수 있습니다.
나는 당신에게도 동의하는 경향이있다. 그러나 그 일반적인 관행은 단순한 것입니까? –
@aljof 어느 부분입니까? – inf3rno
언급 한 위치 : "GET/api/v1/user/136을 제공하는 POST/api/v1/auth 링크를 사용합니다." 내가 뭘 묻는 지 이유는 POST의 응답을 내 애플 리케이션이 사용하는 데이터를 포함하지만 대신에 다른 요청을 사용하여 응용 프로그램을 가지고 데이터를 얻을 필요가 없다는 것입니다? –