«api-design» 태그된 질문

API (Application Programming Interface) 디자인에서는 범용 또는 공용으로 사용되는 라이브러리를 만들기위한 모범 사례에 대해 설명합니다.

14
백엔드를 API로 작성해야합니까?
오늘 MVC 애플리케이션에 대해 열띤 토론을했습니다. 우리는 MVC ( ASP.NET )로 작성된 웹 사이트를 가지고 있으며 일반적으로보기에서 무언가의 패턴을 따릅니다.-> 컨트롤러를칩니다. 컨트롤러 방법 자체)-> 모델보기-> 헹굼 및 반복. 그는 우리 코드가 너무 밀접하게 결합되어 있다고 말했다. 예를 들어 데스크톱 응용 프로그램을 원한다면 기존 코드를 사용할 수 없습니다. 그가 말한 솔루션과 …

4
부패 방지 계층이란 무엇이며 어떻게 사용됩니까?
반부패 계층이 실제로 무엇을 의미하는지 알아 내려고 노력 중입니다. 레거시 코드 또는 잘못된 API를 전환 / 해결하는 방법이라는 것을 알고 있습니다. 내가 이해하지 못하는 것은 작동 방식과 원하지 않는 층과 깨끗하게 분리되는 것입니다. 몇 가지 검색을 수행했지만 간단한 예나 설명을 찾을 수 없으므로이를 이해하고 간단한 예를 통해 설명 할 수있는 …

7
검색이 RESTful 인터페이스에 어떻게 적합합니까?
RESTful 인터페이스를 설계 할 때 요청 유형의 의미는 설계에 필수적으로 간주됩니다. GET- 콜렉션 나열 또는 검색 요소 PUT- 컬렉션 또는 요소 교체 POST- 콜렉션 또는 요소 작성 삭제 -음, 음, 컬렉션 또는 요소 삭제 그러나 이것은 "검색"의 개념을 다루지 않는 것 같습니다. 예를 들어 구직 사이트를 지원하는 웹 서비스 제품군을 …

14
솔루션이 가능한 한 일반적이거나 구체적이어야합니까?
"type"속성을 가진 엔티티가 있다고 가정하십시오. 20 가지 이상의 가능한 유형이있을 수 있습니다. 이제 유일하게 유스 케이스 인 A-> B에서 유형을 변경할 수있는 것을 구현하라는 요청을 받았습니다. 그렇다면 유효한 유형이라면 임의의 유형 변경을 허용하는 것을 구현해야합니까? 또는 요구 사항에 따라 A-> B에서 변경하고 B-> A 또는 A-> C와 같은 다른 유형 …

5
매개 변수가 구문 적으로 정확하지만 비즈니스 규칙을 위반하는 경우 HTTP 400 (잘못된 요청) 상태를 리턴해야합니까?
정수를 매개 변수로 사용하는 REST 끝 점이 있다고 가정 해보십시오. /makeWaffles?numberOfWaffles=3 이 경우 음수의 와플을 만들 수 없으므로 숫자가 양수가되기를 원합니다 (0 와플을 요청하는 것은 시간 낭비입니다). 따라서 양의 정수를 포함하지 않는 요청을 거부하고 싶습니다. 또한 최대 정수를 초과하는 요청을 거부하고 싶습니다 (MAX_INTEGER라고 가정 해 봅시다). 누군가 양수가 아닌 와플을 …
56 api-design  http 

9
외부 API의 예상치 못한 값으로부터 보호해야합니까?
외부 API에서 입력을받는 함수를 코딩한다고 가정 해 봅시다 MyAPI. 해당 외부 API MyAPI에는 a string또는 a를 반환한다는 계약이 있습니다 number. 이 같은 일을 방지하는 것이 좋습니다 null, undefined, boolean그것의 API의 일부가 아닌 비록 등 MyAPI? 특히 API를 제어 할 수 없으므로 정적 유형 분석과 같은 것을 통해 보장 할 수 …


14
RESTful API 디자인. 행이 없으면 무엇을 반환해야합니까?
현재 Slim Framework를 사용하여 소셜 네트워크 용 API를 코딩하고 있습니다. 내 질문은 : json 구조에 반환 할 행이없는 경우 모범 사례는 무엇입니까? 이 호출 / v1 / get / movies 는 테이블 영화 이름에서 2 개의 행을 반환 한다고 가정 합니다. [ {"name": "Ghostbusters"}, {"name": "Indiana Jones"} ] 그러나 / …

6
많은 작은 요청과 소수의 큰 요청 (API 디자인)
현재 다음과 같이 조직과 프로젝트를 진행하고 있습니다. 클라이언트 -REST API를 통해 기본 서버에서 데이터를 가져옵니다. 서버 -타사 API를 통해 다른 여러 서버에서 데이터를 요청합니다. 타사 API-서버에 데이터를 제공하는 통제 할 수없는 서비스 (Reddit, Hackernews, Quora 등) 주장을 위해 클라이언트가 먼저 각 타사 API의 항목 목록이 필요하다고 가정 해 봅시다. 이 …

3
PATCH 방법이 i 등성이 아닌 이유는 무엇입니까?
나는 이것에 대해 궁금했다. 에 및 필드 가있는 user리소스 가 있다고 가정 합니다. 필드를 업데이트하려면 다음과 같이 리소스에 PATCH 요청을 할 수 있습니다.idname PATCH /users/42 {"name": "john doe"} 그런 다음 응용 프로그램은 사용자 42 이름을 업데이트합니다. 그러나 왜이 요청을 반복하면 결과가 달라 집니까? RFC 5789 에 따르면 패치는 안전하거나 dem …

6
공개적으로 제공되지 않는 코드에 대한 방어 적 프로그래밍 관행을 따르는 것이 얼마나 필요한가?
카드 게임의 Java 구현을 작성하고 있으므로 Zone이라고하는 특수 유형의 컬렉션을 만들었습니다. Java Collection의 모든 수정 메소드는 지원되지 않지만 Zone API에는 메소드가 있습니다.이 메소드 move(Zone, Card)는 카드를 지정된 영역에서 자신으로 이동시킵니다 (패키지 전용 기술에 의해 수행됨). 이런 식으로, 영역에서 카드를 가져 가지 않고 단순히 사라지지 않도록 할 수 있습니다. 다른 영역으로 …


8
java.util.ArrayList가 왜 널을 추가 할 수 있습니까?
왜 java.util.ArrayList추가 할 수 있는지 궁금 합니다 null. 에 추가하고 싶은 경우 null가 ArrayList있습니까? 프로젝트에서 일부 코드가 추가 되는 버그가 있었고 버그가있는 곳을 찾기가 어려웠 기 때문에이 질문 null을하고 ArrayList있습니다. 분명히 NullPointerException다른 코드가 요소에 액세스하려고 시도 할 때까지는 발생하지 않았습니다. 문제는 null객체 를 추가 한 코드를 찾는 방법이었습니다 . ArrayList요소가 …

1
REST API 응답에서 null 및 누락 된 키 [닫기]
내 응용 프로그램에서 일부 사용자는 우리에게 성을 알려주고 다른 사용자는 그렇지 않습니다. REST API 응답에서 선호되는 본문 : "널"값으로 : {"firstName": "Bob", "lastName": null} 또는 누락 된 키 : {"firstName": "Bob"}
40 rest  api-design  json 

11
REST API가 500 내부 서버 오류를 리턴하여 쿼리가 존재하지 않는 오브젝트를 참조 함을 표시해야합니까?
여러 IoT 장치의 데이터를 처리하는 서버에있는 REST API로 작업하고 있습니다. 내 임무는 API를 사용하여 서버를 쿼리하여 해당 장치에 대한 특정 성능 정보를 수집하는 것입니다. 어떤 경우에는 사용 가능한 장치 및 해당 식별자 목록을 얻은 다음 나중에 해당 식별자 (GUID)를 사용하여 자세한 내용을 서버에 쿼리합니다. 서버가 500 Internal Server Error해당 ID …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.