loopbackio / loopbackio/loopback-next
Model type "buffer" is not working
Personne n'a encore pris cette issue.
- Langage dominant
- TypeScript
- Étoiles
- 5.1k
- Forks
- 1.1k
- Merge moyen
- 2 j 21 h
- PR mergées (30 j)
- 27
Description
### Describe the bug
Getting below error after creating model with **buffer** type property.
> Request POST /tests failed with status code 500. Error: type must be JSONType or JSONType[]: buffer
**Model Property** (Entity):
`@property({
type: 'buffer',
})
image?: Buffer;
`
Steps to reproduce:
1. Create new app: lb4 app
2. Add new model with buffer type property (not required field): lb4 model
3. Add any type of db: lb4 datasource
4. Create repository: lb4 repository
5. Create controller with all CRUD operations: lb4 controller
6. Test POST request on explorer
### Logs
```shell
Request POST /tests failed with status code 500. Error: type must be JSONType or JSONType[]: buffer
at getJSONTypes (/Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/compile/validate/dataType.ts:36:9)
at getSchemaTypes (/Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/compile/validate/dataType.ts:20:17)
at typeAndKeywords (/Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/compile/validate/index.ts:159:31)
at subSchemaObjCode (/Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/compile/validate/index.ts:147:3)
at subschemaCode (/Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/compile/validate/index.ts:124:7)
at KeywordCxt.subschema (/Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/compile/validate/index.ts:491:5)
at applyPropertySchema (/Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/vocabularies/applicator/properties.ts:45:11)
at Object.code (/Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/vocabularies/applicator/properties.ts:32:9)
at keywordCode (/Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/compile/validate/index.ts:523:9)
at /Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/compile/validate/index.ts:265:9
at CodeGen.code (/Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/compile/codegen/index.ts:525:33)
at CodeGen.block (/Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/compile/codegen/index.ts:680:20)
at iterateKeywords (/Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/compile/validate/index.ts:262:7)
at groupKeywords (/Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/compile/validate/index.ts:241:7)
at /Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/compile/validate/index.ts:233:38
at CodeGen.code (/Users/shailendrasingh/Documents/workspace/testapp/node_modules/ajv/lib/compile/codegen/index.ts:525:33)
```
### Additional information
_No response_
### Reproduction
https://github.com/shailendramonu/testlb4app
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Ouvrez la reproduction liée et recréez le model, datasource, repository, controller généré ainsi que la requête POST décrite dans l’issue. Suivez le chemin de validation qui rejette la propriété Buffer facultative du model, puis ajoutez une couverture montrant que la requête POST n’échoue plus avec l’erreur AJV JSONType.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- nodejs, typescript
- Domaine
- api, backend
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100