( spec: ParameterObject, request: Request, pathParams: PathParameterValues, )
| 103 | } |
| 104 | |
| 105 | function getParamFromRequest( |
| 106 | spec: ParameterObject, |
| 107 | request: Request, |
| 108 | pathParams: PathParameterValues, |
| 109 | ) { |
| 110 | switch (spec.in) { |
| 111 | case 'query': |
| 112 | return request.query[spec.name]; |
| 113 | case 'path': |
| 114 | return pathParams[spec.name]; |
| 115 | case 'header': |
| 116 | // @jannyhou TBD: check edge cases |
| 117 | return request.headers[spec.name.toLowerCase()]; |
| 118 | // TODO(jannyhou) to support `cookie`, |
| 119 | // see issue https://github.com/loopbackio/loopback-next/issues/997 |
| 120 | default: |
| 121 | throw RestHttpErrors.invalidParamLocation(spec.in); |
| 122 | } |
| 123 | } |
no test coverage detected