Skip to content

Commit 87a840d

Browse files
committed
fix(validation): mapped validated values to request sections
1 parent 9bb46e5 commit 87a840d

File tree

3 files changed

+59
-55
lines changed

3 files changed

+59
-55
lines changed

README.md

+3-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ app.listen(3000)
3232
4. **Add schemas** and request/response validation functions to check request parameters.
3333
5. **Generate documentation** by running `microjoi` to convert (Joi) schemas to (Swagger).
3434

35-
## Directory Structure
35+
## Directory Structure
3636
```
3737
/your-project
3838
/api
@@ -105,6 +105,8 @@ const schemas = {
105105
}
106106

107107
function validateRequest(request) {
108+
// request.validation = {body: {details: request.validation.details}}
109+
// delete request.validation
108110
// return Promise
109111
}
110112

koa/validation.js

+4-2
Original file line numberDiff line numberDiff line change
@@ -96,11 +96,13 @@ function requestValidationPromise({request, params}, section, schema) {
9696
switch (section) {
9797
case 'path':
9898
promise = validationPromise(params, schema, joiOptions)
99-
.then(value => params = value)
99+
.then(values => Object.keys(values).map(key => params[key] = values[key]))
100100
break;
101101
case 'query': case 'body':
102102
promise = validationPromise(request[section], schema, joiOptions)
103-
.then(value => request[section] = value)
103+
.then(values => {
104+
Object.keys(values).map(key => request[section][key] = values[key])
105+
})
104106
break;
105107
case 'header':
106108
promise = Promise.all(Object.keys(schema).map(name => {

package-lock.json

+52-52
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)