face.js
face.js dosyası, modüllere ait API endpoint tanımlarını merkezi bir yapı içerisinde belirtmek için kullanılır. Bu yapı şu an sistemde zorunlu değildir, ancak yazılması halinde:
- Endpointlerin dokümantasyonu kolaylaşır
- Geliştirici tarafında kullanım kolaylığı sağlar
- Modül bazlı API görünürlüğü elde edilir
Yapı Tanımı
Her modül, dataObjects içinde bir nesne olarak tanımlanır. Bu nesne name, description ve endpoints içerecek şekilde yapılandırılır.
Örnek:
dataObjects: [
{
name: "Auth",
description: "Auth",
endpoints: [
{
method: "POST",
url: "/api/auth",
title: "Login",
description: "Login",
body: {
type: "json",
content: {
email: "[email protected]",
password: "admin",
},
},
},
...
],
},
...
]
Desteklenen Alanlar
name: Modülün adıdescription: Modül açıklamasıendpoints: Endpoint tanımlarının listesi
Her endpoint içinde:
method: HTTP metodu (GET,POST,PUT,DELETE)url: Endpoint adresititle: Kısa başlıkdescription: Açıklamabody: (Varsa) JSON body örneğiparameters: (Varsa) URL parametreleriheaders: (Varsa) gerekli başlık bilgileriquery: (Varsa) query string parametreleri
Örnek Endpoint Tanımları
Register
{
method: "POST",
url: "/api/auth/register",
title: "Register",
description: "Register",
body: {
type: "json",
content: {
firstName: "Admin",
lastName: "Admin",
email: "[email protected]",
password: "admin",
rePassword: "admin",
},
},
}
Verify Email
{
method: "GET",
url: "/api/auth/:token/validation",
title: "Verify Email",
description: "Verify Email",
parameters: [
{
key: "token",
value: "123456",
description: "Token",
required: true,
},
],
}
face.jskullanımı sistemde henüz zorunlu değildir.