코아의 능력에 대한 이 간략한 설명이 여러분에게 귀중했으면 좋겠습니까? 자세한 내용은 ToDo 예제, Koa 설명서를 살펴보고 언젠가 Koa가 팀의 도구 상자에 유용한 추가 가 될 수 있습니다. 누락된 모든 것을 다루기 위해 테스트 사례와 오류 처리기를 추가하여 지식을 테스트합니다. 기존 Express 앱을 Koa로 변환할 수도 있습니다. 더 많은 코드 예제에 대 한 Koa 예제 리포지토리를 체크 아웃 합니다. 위의 예제를 확장하여 각 웹 요청의 URL을 콘솔에 기록하는 미들웨어 함수를 포함할 수 있습니다. 이전 예제에서는 ctx.request.type 대신 ctx.type을 사용할 수 있으며 ctx.accepts 대신 ctx.request.accepts를 사용할 수 있습니다. 위에서 제공한 예제부터 시작하여 살펴보겠습니다. Koa는 진입점 파일의 초기에 오류 미들웨어를 정의하여 오류를 처리합니다. 오류 미들웨어가 잡히기 후에 정의된 미들웨어의 오류만 발견되므로 오류 미들웨어를 조기에 정의해야 합니다. 예를 들어 index.js 파일을 사용하여 설명()을 사용하여 테스트 그룹을 함께 청크하는 데 사용됩니다. 예를 들어 이 시나리오에서는 공용 경로를 테스트하기 때문에 `기본 경로 테스트`라고 지정했습니다. Koa 응답 개체는 일반적으로 해당 컨텍스트 개체에 포함 됩니다. 경로 정의를 사용하여 응답 설정의 예를 보여 드리겠습니다: 다음으로 Github의 Koa Do 데모 리포지토리로 이동해야 합니다.
readme의 지침에 따라 시스템에서 예제를 다운로드, 구성 및 실행합니다. 모든 작업이 완료되면 연습과 함께 수행할 수 있습니다. 위의 예제에서는 두 개의 미들웨어 함수를 정의합니다: 다음 기사에서 Koa Through Example: Part 2에서는 예제를 통해 다운스트림 및 업스트림의 의미를 압축 해제하기 시작합니다. 다음은 요청 클라이언트가 xml을 지원하는지 확인하는 예입니다. 이 시리즈의 모든 예제를 다운로드할 수 있습니다. 또한 Node.js의 최신 버전(예: 버전 ≥ 8.9.4)을 사용하여 실행하려고 합니다. 다음은 Koa의 응답 개체를 사용하여 파일을 응답 본문으로 스트리밍하는 예제입니다. 여기에 다른 기능의 각각로 로거 미들웨어의 예입니다 : 그들의 웹 사이트는 코아에 대해 알아야 할 모든 것을 설명하는 빌어 먹을 좋은 일을하지만, 나는 그것이 안녕하세요 세계 (자신의 사이트에서 예)를 얻는 것이 얼마나 쉬운지 보여주고 싶습니다. npm 테스트를 통해 테스트를 실행합니다.
서버가 설정되지 않았기 때문에 다음과 같은 오류가 표시됩니다: Postgres와 함께 pg 및 Knex를 사용하여 데이터베이스 자체와 상호 작용합니다: 서버 구성은 매우 간단합니다. 오류 처리기는 스택의 다른 미들웨어에서 throw되는 모든 오류를 처리합니다. 그렇지 않으면 라우터 구성에 주의를 기울여 보겠습니다. _.get, _.post 등과 같이 일련의 HTTP 동사를 지원합니다. 첫 번째 매개 변수는 URL 정의, 다음 Koa 컨텍스트와 비동기 함수를 전달 합니다. “/saySomething” 경로는 의무적인 “안녕하세요 세계”입니다. ctx.body의 값을 클라이언트에 대한 응답으로 다시 전송되는 “hello world”로 설정합니다. 또한 이전에 설명한 오류 처리기를 테스트하려는 경우 “throwError” 경로가 표시됩니다.
거기에서, 우리는 ToDo 경로 자체에 대 한 만든 우리의 경로. 이제 API의 나머지 부분에 주의를 기울여 보겠습니다. expect().toEqual() 및 expect().toContain는 매우 자명합니다. 서버의 응답이 설정된 값과 같을 것으로 예상합니다. 이 경우, 200. 테스트할 수 있는 많은 것들이 있지만 가장 많이 사용하는 것들입니다.