HTTP durum kodları genellikle can sıkıcı bir hale gelebiliyor. Heleki API ile çalışanlar için. Tüm HTTP durum kodlarını bir kutuda veren bir kitaplık olmadan API oluşturmak hiç bu kadar kolay olmamıştı. Bu nedenle, Yorum İsteği (RFC) tarafından tanımlanan tüm HTTP API durum yanıt kodlarıyla zarif, esnek ve soyutlanmış bir npm oluşturdum.
Kullanım :
const express = require('express');
const { Response } = require('http-status-codez');
const User = require('./models/user');
const app = express();
app.get('/api/v1/users', catchAsync(async (req, res, next) => {
const users = await User.find();
res.status(Response.HTTP_OK).json({
status: 'success',
results: users.length,
data: {
users,
},
});
}));
app.get('/api/v1/users/:id', catchAsync(async (req, res, next) => {
const user = await User.findById(req.params.id);
if (!user) {
return next(
new AppError('User not found with that ID', Response.HTTP_NOT_FOUND);
);
}
res.status(Response.HTTP_OK).json({
status: 'success',
data: {
user,
},
});
Kod | Örnek Özellikleri | İfade |
100 | HTTP_CONTINUE | Devam et |
101 | HTTP_SWITCHING_PROTOCOLS | Protokolleri Değiştirme |
102 | HTTP_PROCESSING | İşleme |
103 | HTTP_EARLY_HINTS | Erken İpuçları |
200 | HTTP_OK | tamam |
201 | HTTP_CREATED | Oluşturuldu |
202 | HTTP_ACCEPTED | Kabul edilmiş |
203 | HTTP_NON_AUTHORITATIVE_INFORMATION | Yetkili Olmayan Bilgiler |
204 | HTTP_NO_CONTENT | İçerik yok |
205 | HTTP_RESET_CONTENT | İçeriği Sıfırla |
206 | HTTP_PARTIAL_CONTENT | Kısmi İçerik |
207 | HTTP_MULTI_STATUS | Çoklu Durum |
208 | HTTP_ALREADY_REPORTED | Zaten Rapor Edildi |
226 | HTTP_IM_USED | IM Kullanıldı |
300 | HTTP_MULTIPLE_CHOICES | Çoklu seçimler |
301 | HTTP_MOVED_PERMANENTLY | Kalıcı Olarak Taşındı |
302 | HTTP_FOUND | Bulundu |
303 | HTTP_SEE_OTHER | Diğerlerini Gör |
304 | HTTP_NOT_MODIFIED | Modifiye edilmemiş |
305 | HTTP_USE_PROXY | Proxy kullan |
306 | HTTP_RESERVED | Ayrılmış |
307 | HTTP_TEMPORARY_REDIRECT | Geçici Yeniden Yönlendirme |
308 | HTTP_PERMANENTLY_REDIRECT | Kalıcı Yönlendirme |
400 | HTTP_BAD_REQUEST | Geçersiz istek |
401 | HTTP_UNAUTHORIZED | Yetkisiz |
402 | HTTP_PAYMENT_REQUIRED | ödeme gerekli |
403 | HTTP_FORBIDDEN | Yasak |
404 | HTTP_NOT_FOUND | Bulunamadı |
405 | HTTP_METHOD_NOT_ALLOWED | izin verilmeyen yöntem |
406 | HTTP_NOT_ACCEPTABLE | Kabul edilemez |
407 | HTTP_PROXY_AUTHENTICATION_REQUIRED | Proxy Kimlik Doğrulaması Gerekli |
408 | HTTP_REQUEST_TIMEOUT | İstek zaman aşımına uğradı |
409 | HTTP_CONFLICT | Fikir ayrılığı |
410 | HTTP_GONE | Gitti |
411 | HTTP_LENGTH_REQUIRE | Uzunluk Gerekli |
412 | HTTP_PRECONDITION_FAILED | Ön Koşul Başarısız |
413 | HTTP_REQUEST_ENTITY_TOO_LARGE | girilen veri çok fazla |
414 | HTTP_REQUEST_URI_TOO_LONG | URI Çok Uzun |
415 | HTTP_UNSUPPORTED_MEDIA_TYPE | Desteklenmeyen Medya Türü |
416 | HTTP_REQUESTED_RANGE_NOT_SATISFIABLE | Talep Edilen Aralık Karşılanamaz |
417 | HTTP_EXPECTATION_FAILED | Beklenti Başarısız |
418 | HTTP_I_AM_A_TEAPOT | Ben bir çaydanlığım |
419 | HTTP_INSUFFICIENT_SPACE_ON_RESOURCE | Kaynakta Yetersiz Alan |
420 | HTTP_METHOD_FAILURE | Yöntem Başarısızlığı |
421 | HTTP_MISDIRECTED_REQUEST | Yanlış Yönlendirilmiş Talep |
422 | HTTP_UNPROCESSABLE_ENTITY | İşlenemeyen Varlık |
423 | HTTP_LOCKED | Kilitli |
424 | HTTP_FAILED_DEPENDENCY | Başarısız Bağımlılık |
425 | HTTP_TOO_EARLY | Çok erken |
426 | HTTP_UPGRADE_REQUIRED | Yükseltme Gerekli |
428 | HTTP_PRECONDITION_REQUIRED | Ön Koşul Gerekli |
429 | HTTP_TOO_MANY_REQUESTS | Çok fazla istek |
431 | HTTP_REQUEST_HEADER_FIELDS_TOO_LARGE | Üstbilgi Alanları Çok Büyük İste |
451 | HTTP_UNAVAILABLE_FOR_LEGAL_REASONS | Yasal Nedenlerle Kullanılamaz |
500 | HTTP_INTERNAL_SERVER_ERROR | İç Sunucu Hatası |
501 | HTTP_NOT_IMPLEMENTED | Uygulanmadı |
502 | HTTP_BAD_GATEWAY | Hatalı Ağ Geçidi |
503 | HTTP_SERVICE_UNAVAILABLE | hizmet kullanılamıyor |
504 | HTTP_GATEWAY_TIMEOUT | Ağ Geçidi Zaman Aşımı |
505 | HTTP_VERSION_NOT_SUPPORTED | HTTP Sürümü Desteklenmiyor |
506 | HTTP_VARIANT_ALSO_NEGOTIATES_EXPERIMENTAL | Varyant Ayrıca Pazarlık Yapar |
507 | HTTP_INSUFFICIENT_STORAGE | Yetersiz depolama |
508 | HTTP_LOOP_DETECTED | Döngü Algıla |
5010 | HTTP_NOT_EXTENDED | Uzatılmamış |
511 | HTTP_NETWORK_AUTHENTICATION_REQUIRED | Ağ Kimlik Doğrulaması Gerekli |