Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit6463df7

Browse files
committed
feat(connect): 実装してみようを追加
1 parent1352536 commit6463df7

File tree

2 files changed

+20
-4
lines changed

2 files changed

+20
-4
lines changed

‎ja/connect/README.md

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,22 @@ Rackを参考にして実装されています。
111111

112112
-[Ruby - Rack解説 - Rackの構造とRack DSL - Qiita](http://qiita.com/higuma/items/838f4f58bc4a0645950a#2-5"Ruby - Rack解説 - Rackの構造とRack DSL - Qiita")
113113

114-
次は、先ほど抽象的なコードとなっていたものを、具体的な実装にしていきます。
114+
次は、先ほど抽象的なコードとなっていたものを具体的な実装にしながら見ていきます。
115+
116+
##実装してみよう
117+
118+
`Junction`というConnectライクな_middleware_をサポートしたものを作成してみます。
119+
120+
`Junction`は、`use(middleware)``process(value, (error, result) => { });`を持っているシンプルなクラスです。
121+
122+
[import junction.js](../../src/connect/junction.js)
123+
124+
実装を見てみると、`use`で_middleware_を登録して、`process`で登録したミドルウェアを順番に実行していきます。
125+
そのため、`Junction`自体は渡されたデータは何も処理せずに、_middleware_との中継のみをしています。
126+
127+
登録する_middleware_はConnectと同じで、処理をしたら`next`を呼んで、次の_middleware_が処理するというのを繰り返しています。
128+
129+
使い方はConnectと引数の違いはありますが、ほぼ同じような形で利用できます。
130+
131+
[import junction-example.js](../../src/connect/junction-example.js)
115132

116-
##実装してみよう

‎src/connect/junction-example.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
"use strict";
22
importJunctionfrom"./junction";
3-
importassertfrom"power-assert";
3+
importassertfrom"assert";
44
letjunction=newJunction();
55
junction.use(functiontoUpperCase(res,next){
66
res.value=res.value.toUpperCase();
@@ -10,7 +10,7 @@ junction.use(function exclamationMark(res, next) {
1010
res.value=res.value+"!";
1111
next();
1212
});
13-
junction.use(function(error,res,next){
13+
junction.use(functionerrorHandling(error,res,next){
1414
console.error(error.stack);
1515
next();
1616
});

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp