응용 프로그램 속성 및 방법은 KOA를 생성

큰 검은 노트 :

검토 : 첫 번째 안녕하세요 세계 응용 프로그램 코아 시작

app.listen (...)

const Koa = require('koa');
const app = new Koa();
app.listen(3000);

//不简写
const http = require('http');
const Koa = require('koa');
const app = new Koa();
http.createServer(app.callback()).listen(3000);

//配置一个应用程序同时作为HTTP或HTTPS等多个地址
const http = require('http');
const https = require('https');
const Koa = require('koa');
const app = new Koa();
http.createServer(app.callback()).listen(3000);
https.createServer(app.callback()).listen(3001);

) (app.callback

적절한 반환 http.createServer()콜백 메소드는 요청을 처리합니다. 또한 연결 / Express 애플리케이션을 탑재이 콜백 기능 KOA 응용 프로그램을 사용할 수 있습니다.

app.use (기능)

미들웨어는이 응용 프로그램에 추가 할 수있는 방법을 제공.

app.keys =

서명 쿠키 키를 설정합니다.

이들은 KeyGrip로 전달됩니다,하지만 당신은 당신의 자신의 KeyGrip 인스턴스를 전달할 수 있습니다.

app.keys = ['im a newer secret', 'i like turtle'];
app.keys = new KeyGrip(['im a newer secret', 'i like turtle'], 'sha256');

이러한 키 스위치와 사용 가능 { signed: true }파라미터 서명 쿠키 사용.

ctx.cookies.set('name', 'tobi', { signed: true });

app.context

app.context그것은에서 만든 ctx프로토 타입. 당신은 편집 할 수 있습니다 app.contextctx추가 속성을 추가 할 수 있습니다.

예를 들어,하는 ctx데이터베이스 참조에 추가 :

app.context.db = db();

app.use(async ctx => {
  console.log(ctx.db);
});

참고 :

ctx속성의 대부분은 사용에있는 getter, setter그리고 Object.defineProperty()정의. 당신은있을 수 app.context에 사용 Object.defineProperty()이러한 속성을 편집하려면 (권장하지 않음). 확인 defineProperty
설치된 응용 프로그램은 현재 상위 사용 ctx및 설정. 따라서, 응용 프로그램 설치 미들웨어 단지 세트.

app.on 오류 처리

그것은하지 않는 한 기본적으로 모든 오류 출력은 stderr로 app.silent사실이다. err.status(404) 또는 err.expose기본 오류 처리기가 오류에 해당하는 출력되지 않습니다. 사용자 지정 오류 처리 로직을 수행하려면, 중앙 집중식 로깅, 당신은 추가 할 수 있습니다 "오류"이벤트 리스너를 :

app.on('error', err => {
  log.error('server error', err)
});

//如果 req/res 期间出现错误,并且 _无法_ 响应客户端,
//Context实例仍然被传递:
app.on('error', (err, ctx) => {
  log.error('server error', err, ctx)
});

클라이언트와 여전히 오류에 대한 응답은, 데이터가 소켓에 기록되지 않은 경우, 코아 A를 적절한 500 개 응답 "서버 내부 오류가 발생했습니다."
두 경우 모두, 녹화의 목적은 응용 프로그램 수준 "오류입니다."보내드립니다

전자 문서보고 과연이 매우 눈에 기쁘게되고, 대부분 내 글보다 잘 생긴

게시 20 개 원래 기사 · 원 찬양 38 ·은 40000 +를 볼

추천

출처blog.csdn.net/jiamiao66/article/details/100766271