개체 내장 개체

개체 라우팅

메시지 처리기 라우팅 개체

라우팅 객체는 http 메시지 처리의 핵심 객체로 서버는 라우팅 설정에 따라 url 과 방법을 매칭하고 http 메시지를 해당 프로세서로 전달하여 서로 다른 트랜잭션을 완료합니다.

간단한 경로는 다음과 같은 JSON 객체의 형태로 직접 제공 될 수 있습니다.

1 2 3 4 5 6 7 8
var http = require('http'); var svr = new http.Server(8080, { '/': r => r.response.write('home'), '/help': r => r.response.write('help') }); svr.run();

더 복잡한 라우팅 사용자 지정이 필요한 경우 라우팅 개체를 직접 만들고 필요에 따라 라우팅 전략을 처리 할 수 ​​있습니다.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
var http = require('http'); var mq = require('mq'); var app = new mq.Routing(); app.get('/', r => r.response.write('home')); app.get('/help', r => r.response.write('help')); app.post('/help', r => r.response.write('post a help.')); app.get('/home/:user', (r, user) => r.response.write('hello ' + user)); app.get('/user/:id(\\d+)', (r, id) => r.response.write('get ' + id)); app.get('/actions', { '/run': r => r.response.write('running'), '/sleep': r => r.response.write('sleeping'), '(.*)': r => r.response.write('........') }); var svr = new http.Server(8080, app); svr.run();

라우팅 개체는 설정된 규칙에 따라 메시지를 일치시키고 규칙을 충족하는 첫 번째 프로세서로 메시지를 전달합니다. 나중에 추가 된 라우팅 규칙이 먼저 일치합니다. 생성 방법 :

1 2 3 4
var routing = new mq.Routing({ "^/func1(/.*)$": func1, "^/func2(/.*)$": func2 });

정규식과 일치하는 항목은 메시지의 값 속성을 수정하고 하위 항목은 메시지의 params 속성에 저장됩니다. 예 :

1 2 3
var routing = new mq.Routing({ "^/func1(/([0-9]+)/([0-9]+)\.html)$": func1, });

메시지 "/func1/123/456.html", value == "/123/456.html", params == [ "123", "456"]을 일치시킨 후;

일치하는 결과에 자식이 없으면 값은 비어 있고 params는 비어 있습니다. 예 :

1 2 3
var routing = new mq.Routing({ "^/func1/[0-9]+/[0-9]+\.html$": func1, });

메시지 "/func1/123/456.html", value == "", params == [];

일치 결과의 첫 번째 수준에 여러 하위 항목이있는 경우 값은 비어 있고 params는 첫 번째 수준의 하위 항목입니다. 예 :

1 2 3
var routing = new mq.Routing({ "^/func1/([0-9]+)/([0-9]+)\.html$": func1, });

메시지 "/func1/123/456.html", value == "", params == [ "123", "456"];

일치하는 결과에 하위 항목이 하나만 있고 하위 항목이없는 경우 value와 params는 모두이 하위 항목입니다. 예 :

1 2 3
var routing = new mq.Routing({ "^/func1/([0-9]+)/[0-9]+\.html$": func1, });

메시지 "/func1/123/456.html", 값 == "123", params == [ "123"];

계승

건설자

Routing

메시지 처리기 라우팅 개체 만들기

1
new Routing(Object map = {});

호출 매개 변수 :

  • map : 객체, 라우팅 매개 변수 초기화

메시지 처리기 라우팅 개체 만들기

1 2
new Routing(String method, Object map);

호출 매개 변수 :

  • method : 문자열, http 요청 방법 지정, "*"는 모든 방법 허용
  • map : 객체, 라우팅 매개 변수 초기화

회원 기능

append

기존 경로 개체에서 규칙을 추가하면 원래 경로가 추가 된 후 지워집니다.

1
Routing Routing.append(Routing route);

호출 매개 변수 :

  • route : 초기화 된 라우팅, 라우팅 객체

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

라우팅 규칙 세트 추가

1
Routing Routing.append(Object map);

호출 매개 변수 :

  • map : 객체, 라우팅 매개 변수

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

라우팅 규칙 추가

1 2
Routing Routing.append(String pattern, Handler hdlr);

호출 매개 변수 :

  • pattern : 문자열, 메시지 일치 형식
  • hdlr : Handler , 내장 메시지 핸들러, 처리 함수, 체인 처리 배열, 라우팅 객체, 자세한 내용은 mq.Handler 참조하십시오.

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

라우팅 규칙 추가

1 2 3
Routing Routing.append(String method, String pattern, Handler hdlr);

호출 매개 변수 :

  • method : 문자열, http 요청 방법 지정, "*"는 모든 방법 허용, "host"는 가상 도메인 이름 지정
  • pattern : 문자열, 메시지 일치 형식
  • hdlr : Handler , 내장 메시지 핸들러, 처리 함수, 체인 처리 배열, 라우팅 객체, 자세한 내용은 mq.Handler 참조하십시오.

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

host

http 도메인 이름에 대한 라우팅 규칙 세트 추가

1
Routing Routing.host(Object map);

호출 매개 변수 :

  • map : 객체, 라우팅 매개 변수

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

http 도메인 이름을 허용하는 라우팅 규칙 추가

1 2
Routing Routing.host(String pattern, Handler hdlr);

호출 매개 변수 :

  • pattern : 문자열, 메시지 일치 형식
  • hdlr : Handler , 내장 메시지 핸들러, 처리 함수, 체인 처리 배열, 라우팅 객체, 자세한 내용은 mq.Handler 참조하십시오.

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

all

모든 http 메소드를 허용하는 라우팅 규칙 세트 추가

1
Routing Routing.all(Object map);

호출 매개 변수 :

  • map : 객체, 라우팅 매개 변수

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

모든 http 메서드를 허용하는 라우팅 규칙 추가

1 2
Routing Routing.all(String pattern, Handler hdlr);

호출 매개 변수 :

  • pattern : 문자열, 메시지 일치 형식
  • hdlr : Handler , 내장 메시지 핸들러, 처리 함수, 체인 처리 배열, 라우팅 객체, 자세한 내용은 mq.Handler 참조하십시오.

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

get

GET 메소드 라우팅 규칙 세트 추가

1
Routing Routing.get(Object map);

호출 매개 변수 :

  • map : 객체, 라우팅 매개 변수

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

http GET 메서드를 허용하는 라우팅 규칙 추가

1 2
Routing Routing.get(String pattern, Handler hdlr);

호출 매개 변수 :

  • pattern : 문자열, 메시지 일치 형식
  • hdlr : Handler , 내장 메시지 핸들러, 처리 함수, 체인 처리 배열, 라우팅 객체, 자세한 내용은 mq.Handler 참조하십시오.

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

post

http POST 메소드를 허용하는 라우팅 규칙 세트 추가

1
Routing Routing.post(Object map);

호출 매개 변수 :

  • map : 객체, 라우팅 매개 변수

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

http POST 방법을 허용하는 라우팅 규칙 추가

1 2
Routing Routing.post(String pattern, Handler hdlr);

호출 매개 변수 :

  • pattern : 문자열, 메시지 일치 형식
  • hdlr : Handler , 내장 메시지 핸들러, 처리 함수, 체인 처리 배열, 라우팅 객체, 자세한 내용은 mq.Handler 참조하십시오.

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

del

http DELETE 메소드를 허용하는 라우팅 규칙 세트 추가

1
Routing Routing.del(Object map);

호출 매개 변수 :

  • map : 객체, 라우팅 매개 변수

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

http DELETE 메서드를 허용하는 라우팅 규칙 추가

1 2
Routing Routing.del(String pattern, Handler hdlr);

호출 매개 변수 :

  • pattern : 문자열, 메시지 일치 형식
  • hdlr : Handler , 내장 메시지 핸들러, 처리 함수, 체인 처리 배열, 라우팅 객체, 자세한 내용은 mq.Handler 참조하십시오.

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

put

PUT 메소드 라우팅 규칙 세트 추가

1
Routing Routing.put(Object map);

호출 매개 변수 :

  • map : 객체, 라우팅 매개 변수

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

http PUT 방법을 허용하는 라우팅 규칙 추가

1 2
Routing Routing.put(String pattern, Handler hdlr);

호출 매개 변수 :

  • pattern : 문자열, 메시지 일치 형식
  • hdlr : Handler , 내장 메시지 핸들러, 처리 함수, 체인 처리 배열, 라우팅 객체, 자세한 내용은 mq.Handler 참조하십시오.

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

patch

PATCH 메소드 라우팅 규칙 세트 추가

1
Routing Routing.patch(Object map);

호출 매개 변수 :

  • map : 객체, 라우팅 매개 변수

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

http PATCH 방법을 허용하는 라우팅 규칙 추가

1 2
Routing Routing.patch(String pattern, Handler hdlr);

호출 매개 변수 :

  • pattern : 문자열, 메시지 일치 형식
  • hdlr : Handler , 내장 메시지 핸들러, 처리 함수, 체인 처리 배열, 라우팅 객체, 자세한 내용은 mq.Handler 참조하십시오.

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

find

FIND 메소드 라우팅 규칙 세트 추가

1
Routing Routing.find(Object map);

호출 매개 변수 :

  • map : 객체, 라우팅 매개 변수

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

http FIND 방법을 허용하는 라우팅 규칙 추가

1 2
Routing Routing.find(String pattern, Handler hdlr);

호출 매개 변수 :

  • pattern : 문자열, 메시지 일치 형식
  • hdlr : Handler , 내장 메시지 핸들러, 처리 함수, 체인 처리 배열, 라우팅 객체, 자세한 내용은 mq.Handler 참조하십시오.

반환 결과 :

  • Routing , 라우팅 개체 자체를 반환합니다.

invoke

메시지 또는 개체 처리

1
Handler Routing.invoke(object v) async;

호출 매개 변수 :

  • v : object , 처리 할 메시지 또는 개체 지정

반환 결과 :

  • Handler , 다음 프로세서로 돌아 가기

toString

객체의 문자열 표현을 반환합니다. 일반적으로 "[Native Object]"를 반환합니다. 객체는 자체 특성에 따라 다시 구현 될 수 있습니다.

1
String Routing.toString();

반환 결과 :

  • String , 객체의 문자열 표현을 반환합니다.

toJSON

객체의 JSON 형식 표현을 반환합니다. 일반적으로 객체에서 정의한 읽을 수있는 속성 모음을 반환합니다.

1
Value Routing.toJSON(String key = "");

호출 매개 변수 :

  • key : 문자열, 사용되지 않음

반환 결과 :

  • Value , 직렬화 가능한 JSON이 포함 된 값을 반환합니다.