async-express-error 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +61 -0
- package/index.js +13 -0
- package/package.json +21 -0
package/README.md
ADDED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# async-handler-js
|
|
2
|
+
|
|
3
|
+
## Description
|
|
4
|
+
|
|
5
|
+
`async-handler-js` est une bibliothèque utilitaire pour Express.js qui permet de gérer les erreurs de manière centralisée dans les fonctions asynchrones. Elle enveloppe les fonctions asynchrones pour capturer et transmettre les erreurs à la fonction `next` d'Express, simplifiant ainsi la gestion des erreurs dans les routes Express.
|
|
6
|
+
|
|
7
|
+
## Installation
|
|
8
|
+
|
|
9
|
+
Vous pouvez installer `async-handler-js` via npm :
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npm install async-handler-js
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Utilisation
|
|
16
|
+
|
|
17
|
+
Voici un exemple d'utilisation de `async-handler-js` dans une application Express :
|
|
18
|
+
|
|
19
|
+
```javascript
|
|
20
|
+
const express = require("express")
|
|
21
|
+
const asyncHandler = require("async-handler-js")
|
|
22
|
+
|
|
23
|
+
const app = express()
|
|
24
|
+
|
|
25
|
+
// Exemple d'une route utilisant async-handler-js
|
|
26
|
+
app.get(
|
|
27
|
+
"/example",
|
|
28
|
+
asyncHandler(async (req, res, next) => {
|
|
29
|
+
// Votre logique asynchrone ici
|
|
30
|
+
const data = await fetchData()
|
|
31
|
+
res.send(data)
|
|
32
|
+
})
|
|
33
|
+
)
|
|
34
|
+
|
|
35
|
+
// Middleware de gestion des erreurs
|
|
36
|
+
app.use((err, req, res, next) => {
|
|
37
|
+
console.error(err) // Log de l'erreur pour le développement
|
|
38
|
+
res.status(500).send("Erreur serveur")
|
|
39
|
+
})
|
|
40
|
+
|
|
41
|
+
app.listen(3000, () => {
|
|
42
|
+
console.log("Serveur démarré sur le port 3000")
|
|
43
|
+
})
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## API
|
|
47
|
+
|
|
48
|
+
### `asyncHandler(fn)`
|
|
49
|
+
|
|
50
|
+
- **Paramètres** :
|
|
51
|
+
- `fn` : La fonction asynchrone que vous souhaitez envelopper.
|
|
52
|
+
- **Retourne** :
|
|
53
|
+
- Une fonction enveloppée qui gère les erreurs et les transmet à la fonction `next` d'Express.
|
|
54
|
+
|
|
55
|
+
## Licence
|
|
56
|
+
|
|
57
|
+
Ce projet est sous licence ISC.
|
|
58
|
+
|
|
59
|
+
## Contributions
|
|
60
|
+
|
|
61
|
+
Les contributions sont les bienvenues ! Si vous souhaitez contribuer, veuillez soumettre une pull request ou ouvrir une issue sur GitHub.
|
package/index.js
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Enveloppe une fonction asynchrone pour gérer les erreurs de manière centralisée.
|
|
3
|
+
* @param {Function} fn - La fonction asynchrone à envelopper.
|
|
4
|
+
* @returns {Function} - La fonction enveloppée.
|
|
5
|
+
*/
|
|
6
|
+
const asyncHandler =
|
|
7
|
+
(fn) =>
|
|
8
|
+
(...args) => {
|
|
9
|
+
const next = args[args.length - 1]
|
|
10
|
+
return Promise.resolve(fn(...args)).catch(next)
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
module.exports = asyncHandler
|
package/package.json
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "async-express-error",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Simplifiez la gestion des erreurs pour les fonctions asynchrones dans Node.js et Express.",
|
|
5
|
+
"main": "index.js",
|
|
6
|
+
"repository": {
|
|
7
|
+
"type": "git",
|
|
8
|
+
"url": "git+https://github.com/J2mCoder/async-express-error.git"
|
|
9
|
+
},
|
|
10
|
+
"keywords": [
|
|
11
|
+
"async",
|
|
12
|
+
"handler",
|
|
13
|
+
"errors",
|
|
14
|
+
"express",
|
|
15
|
+
"middleware",
|
|
16
|
+
"error-handling"
|
|
17
|
+
],
|
|
18
|
+
"author": "J2mCoder",
|
|
19
|
+
"license": "MIT",
|
|
20
|
+
"private": false
|
|
21
|
+
}
|