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