varied_story

다양한 이야기들을 모으고, 정리하려고 합니다.

Slim Framework 매뉴얼 CORS 설정, POST 파일 업로드

CORS 설정 (Setting up CORS) CORS – 교차 오리진 리소스 공유 CORS 지원 구현에 적합한 순서도 참조: CORS 서버 순서도 CORS 지원 서비스는 http://www.test-cors.org/에서 테스트할 수 있습니다. 사양은 https://www.w3.org/TR/cors/에서 확인할 수 있습니다. 간단한 해결책 간단한 CORS 요청의 경우 서버는 응답에 다음 헤더만 추가하면 됩니다. Access-Control-Allow-Origin: <domain>, … 다음 코드는 게으른(lazy) CORS를 활성화해야 합니다. 다음 경로를 …

Slim Framework 매뉴얼 CORS 설정, POST 파일 업로드 더 보기 »

Slim Framework 매뉴얼 마지막 / 라우트 패턴, 경로검색

마지막 슬래쉬(/) 라우트 패턴 (Trailing / in route patterns) Slim은 마지막에 슬래시가 있는 URL 패턴을 없는 URL 패턴과 다르게 처리합니다. 즉, /user와 /user/는 다르므로 서로 다른 콜백을 부착할 수 있습니다. For GET requests a permanent redirect is fine, but for other request methods like POST or PUT the browser will send the second request with …

Slim Framework 매뉴얼 마지막 / 라우트 패턴, 경로검색 더 보기 »

Slim Framework 매뉴얼 미들웨어 – Body Parsing, Content Length

본문 구문분석 미들웨어 (Body Parsing Middleware) 웹 API에서는 데이터를 JSON 또는 XML 형식으로 전송하는 것이 매우 일반적입니다. PSR-7 구현체는 이러한 형식을 지원하지 않으므로 요청 객체의 getBody()를 직접 디코딩해야 합니다. 공통 요구사항인 만큼 슬림4는 이를 처리하기 위해 BodyParsingMiddleware를 제공한다. 사용법 addErrorMiddlware를 호출하기 전에 본문 구문 분석 미들웨어를 사용하여 스택을 다음과 같이 만드는 것이 좋습니다. 게시된 JSON, …

Slim Framework 매뉴얼 미들웨어 – Body Parsing, Content Length 더 보기 »

Slim Framework 매뉴얼 미들웨어 – 메서드, 출력 버퍼링

메서드 재정의 미들웨어 Method Overriding Middleware Method Overidding Middleware를 사용하면 ‘X-Http-Method-Override’ 요청 헤더 또는 요청 본문 매개 변수 ‘_Method’를 사용하여 수신 요청의 메서드를 재정의할 수 있습니다. 미들웨어는 라우팅 미들웨어가 추가된 후에 배치되어야 합니다. 사용법 출력 버퍼링 미들웨어 (Output Buffering Middleware) Output Buffering Middleware를 사용하면 두 가지 출력 버퍼링 모드인 ‘APPEND'(기본값)와 ‘PREPEND’ 모드 사이에서 전환할 수 …

Slim Framework 매뉴얼 미들웨어 – 메서드, 출력 버퍼링 더 보기 »

Slim Framework 매뉴얼 미들웨어 – 라우팅, 에러

라우팅 미들웨어 (Routing Middleware) 라우팅은 미들웨어로 구현되었습니다. 기본 라우터로 FastRoute를 사용하고 있지만 이 라우터에 단단히 결합되어 있지는 않습니다. 다른 라우팅 라이브러리를 구현하려면 라우팅 인터페이스 구현을 직접 생성하면 됩니다. DispatcherInterface, RouteCollectorInterface, RouteParserInterface, RouteResolverInterface Slim의 구성 요소와 라우팅 라이브러리 사이에 브리지를 만듭니다. determineRouteBeforeAppMiddleware를 사용하는 경우 호출 실행 직전 프로그램에 Middleware\RoutingMiddleware미들웨어를 추가하여 이전 동작을 유지해야 합니다. 사용법 에러 …

Slim Framework 매뉴얼 미들웨어 – 라우팅, 에러 더 보기 »

Slim Framework 매뉴얼 Routing (라우팅) #3 컨테이너

라우팅 (Routing) Slim Framework의 라우터는 Fast Route 구성 요소 위에 구축되었으며, 매우 빠르고 안정적입니다. 이 구성 요소를 사용하여 모든 라우팅을 수행하는 동안 앱(app)의 코어는 완전히 분리되었으며 인터페이스는 다른 라우팅 라이브러리를 사용할 수 있는 기반을 마련했습니다. 컨테이너 해결방안 (Container Resolution) 라우트의 함수를 정의하는 데만 국한되지 않습니다. Slim에는 라우트 동작 기능을 정의하는 몇 가지 다른 방법이 있습니다. …

Slim Framework 매뉴얼 Routing (라우팅) #3 컨테이너 더 보기 »

Slim Framework 매뉴얼 Routing (라우팅) #2 라우트 전략, 이름, 그룹, 캐쉬

라우팅 (Routing) Slim Framework의 라우터는 Fast Route 구성 요소 위에 구축되었으며, 매우 빠르고 안정적입니다. 이 구성 요소를 사용하여 모든 라우팅을 수행하는 동안 앱(app)의 코어는 완전히 분리되었으며 인터페이스는 다른 라우팅 라이브러리를 사용할 수 있는 기반을 마련했습니다. 라우트 전략 (Route strategies) 라우트 콜백 서명은 경로 전략에 따라 결정됩니다. 기본적으로 Slim은 라우트 콜백이 요청, 응답 및 라우트 자리 …

Slim Framework 매뉴얼 Routing (라우팅) #2 라우트 전략, 이름, 그룹, 캐쉬 더 보기 »

Slim Framework 매뉴얼 Routing (라우팅) #1 라우트 만들기, 라우트 콜백, 리다이렉션 헬퍼

라우팅 (Routing) Slim Framework의 라우터는 Fast Route 구성 요소 위에 구축되었으며, 매우 빠르고 안정적입니다. 이 구성 요소를 사용하여 모든 라우팅을 수행하는 동안 앱(app)의 코어는 완전히 분리되었으며 인터페이스는 다른 라우팅 라이브러리를 사용할 수 있는 기반을 마련했습니다. 라우트를 만드는 방법 (How to create routes) Slim\App 인스턴스에서 프록시 메서드를 사용하여 응용 프로그램 경로(routes)를 정의할 수 있습니다. Slim Framework는 …

Slim Framework 매뉴얼 Routing (라우팅) #1 라우트 만들기, 라우트 콜백, 리다이렉션 헬퍼 더 보기 »

Slim Framework 매뉴얼 Response (응답) #2 본문, JSON 반환, 리다이렉트

응답 (Response) Slim 앱의 경로 및 미들웨어에는 클라이언트로 반환될 현재 HTTP 응답을 나타내는 PSR-7 응답 객체가 제공됩니다. 응답 객체는 PSR-7 responseinterface HTTP 응답 상태, 헤더 및 본문을 검사하고 조작할 수 있습니다. 응답 본문 (The Response Body) HTTP 응답에는 일반적으로 본문이 있습니다. PSR-7 Request 객체와 마찬가지로 PSR-7 Response 객체는 PsrHttp\Message\StreamInterface의 인스턴스로 본문을 구현한다. HTTP 응답 본문 …

Slim Framework 매뉴얼 Response (응답) #2 본문, JSON 반환, 리다이렉트 더 보기 »

Slim Framework 매뉴얼 Response (응답) #1 상태, 헤더

응답 (Response) Slim 앱의 경로 및 미들웨어에는 클라이언트로 반환될 현재 HTTP 응답을 나타내는 PSR-7 응답 객체가 제공됩니다. 응답 객체는 PSR-7 responseinterface HTTP 응답 상태, 헤더 및 본문을 검사하고 조작할 수 있습니다. 응답 객체를 가져오는 방법 PSR-7 응답 객체는 다음과 같이 경로 콜백에 대한 두 번째 인수로 Slim 애플리케이션 경로에 주입됩니다. Figure 1: 응용 프로그램 경로 …

Slim Framework 매뉴얼 Response (응답) #1 상태, 헤더 더 보기 »

Slim Framework 매뉴얼 Request (요청) #3 파일, 헬퍼, 속성

요청 (Request) Slim 앱의 경로 및 미들웨어에는 웹 서버가 수신한 현재 HTTP 요청을 나타내는 PSR-7 요청 개체가 제공됩니다. 요청 개체는 HTTP 요청 메서드, 헤더 및 본문을 검사하고 조작할 수 있는 PSR-7 ServerRequestInterface를 구현합니다. 업로드된 파일 (Uploaded Files) $_FILES에 업로드된 파일은 요청 개체의 ‘getUploadedFiles()’ 메서드에서 사용할 수 있습니다. ‘input’ 요소의 이름으로 키 지정된 배열을 반환합니다. $files …

Slim Framework 매뉴얼 Request (요청) #3 파일, 헬퍼, 속성 더 보기 »

Slim Framework 매뉴얼 Request (요청) #2 Header, Body

요청 (Request) Slim 앱의 경로 및 미들웨어에는 웹 서버가 수신한 현재 HTTP 요청을 나타내는 PSR-7 요청 개체가 제공됩니다. 요청 개체는 HTTP 요청 메서드, 헤더 및 본문을 검사하고 조작할 수 있는 PSR-7 ServerRequestInterface를 구현합니다. 요청 헤더 (The Request Headers) 모든 HTTP 요청에는 헤더가 있습니다. 이것은 HTTP 요청을 기술하지만 요청 본문에 표시되지 않는 메타데이터입니다. Slim의 PSR-7 Request …

Slim Framework 매뉴얼 Request (요청) #2 Header, Body 더 보기 »