2022. 4. 9. 16:58γBack-End μμ μ€/Node.js
π Pipe
π½ κ°μ
`Pipe`λ `Controller` κ²½λ‘ μ²λ¦¬κΈ°μ μν΄ μ²λ¦¬λλ λ§€κ° λ³μμ μν΄ μλνλ κ²μ΄μμ.
`Nest.js`λ Methodκ° νΈμΆλκΈ° μ§μ μ `Pipe`λ₯Ό μ½μ νκ³ , `Pipe`λ Methodλ₯Ό ν₯νλ λ§€κ° λ³μλ₯Ό λ°μ λ€ μ΄μ λν΄ μλνλ κ²μ΄μμ.
βΊ Data Transformation
μ λ ₯ Dataλ₯Ό μνλ νμμΌλ‘ λ³ν ν΄μ£Όλ κΈ°λ₯μΈ κ²μ΄μμ. (μ : λ¬Έμμ΄μ μ μλ‘ λ³ν)
λ§μ½ μ μκ°μ `Client`κ° λ³΄λμΌλ©΄ νλλ°, λ¬Έμμ΄ νμμΌλ‘ μ¨λ€λ©΄ `Pipe`μμ μλμΌλ‘ μ«μλ‘ λ°κΏμ£Όλ κ²μ΄μμ.
βΊ Data Validation
`Nest.js`μμλ `Pipe`λ₯Ό μ΄μ©νλ©΄ `@Valid`μ κ±°μ λκ°μ΄ μ ν¨μ± κ²μ¬ κΈ°λ₯μ μ΄μ©ν μ μλ κ²μ΄μμ.
μ¦, μ λ ₯ Dataλ₯Ό κ²μ¦νκ³ , μ ν¨ν κ²½μ° λ³κ²½λμ§ μμ μνλ‘ μ λ¬νλ©΄ λλ κ²μ΄μμ. λ§μ½ κ·Έλ μ§ μλ€λ©΄ Dataκ° μ¬λ°λ₯΄μ§ μλ€λ `Exception`μ λμ Έμ£Όλ©΄ λλ κ²μ΄μμ.
μλ₯Ό λ€μ΄ νμ μ΄λ¦μ΄ 10μ μ΄νμ¬μΌ νλλ°, 10μ μ΄μ μ λ ₯μ΄ μ€λ©΄ `Exception`μ΄ ν°μ§κ³ ν΄λΉ λ΄μ©μ λ°ννλ κ²μ΄μμ.
π¦ Pipeμ λͺ¨λ κΈ°λ₯
λν `Pipe`λ Method λμ λ°λ‘ μ§μ μ μλ μμΌ Methodλ‘ ν₯νλ λ§€κ° λ³μμ λν΄ λ³νν κ²μ΄ μμΌλ©΄ λ³ννκ³ , λμμ μ ν¨μ± κ²μ¬λ₯Ό μν΄μλ μλνλ κ²μ΄μμ.
π½ μ¬μ©νλ λ°©λ² (Binding Pipes)
`Pipe`λ₯Ό μ΄μ©νλ λ°©λ²μ ν¬κ² μΈκ°μ§λ‘ ꡬλΆν μ μλ κ²μ΄μμ.
`Hendler-level Pipes`, `Parameter-level Pipes`, `Global-level Pipes`λ‘ κ΅¬λΆν μ μλ κ²μ΄μμ.
π¦ Handler-level Pipes
`@UsePips()`λ₯Ό μ΄μ©ν΄μ μ¬μ©ν μ μλ κ²μ΄μμ.
μ΄ `Pipe`λ λͺ¨λ λ§€κ° λ³μ(Parameter)μ μ μ©μ΄ λλ κ²μ΄μμ.
π¦ Parameter-level Pipes
π¦ Global-level Pipes
β
π½ Built-in Pipes
`Nest.js`μ κΈ°λ³Έμ μΌλ‘ μ΄μ©ν μ μλ 6κ°μ§ `Pipe`κ° μλ κ²μ΄μμ.
β ValidationPipe
β ParseIntPipe
β ParseBoolPipe
β ParseArrayPipe
β ParseUUIDPipe
ββ
β
μ°Έκ³ μλ£ λ° μΆμ² : μΈνλ° - λ°λΌνλ©° λ°°μ°λ NestJS κ°μ
'Back-End μμ μ€ > Node.js' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Node.js][Nest.js]TypeORM (0) | 2022.04.09 |
---|---|
[Node.js][Nest.js] Configuration (μ€μ ) (0) | 2022.04.09 |
[BackEnd][Node.js] Express.js - μ΄κΈ° κ΅¬μ± : DB μ°κ²°(Sequelize) (0) | 2022.04.07 |
[BackEnd][Node.js] Express.js - μ΄κΈ° κ΅¬μ± : DB μ°κ²° (2) | 2022.04.07 |
[BackEnd][Node.js] Express.js - μ΄κΈ° κ΅¬μ± (0) | 2022.04.07 |