New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

katana-client

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

katana-client

A powerful HTTP client module similar to axios

  • 1.0.3
  • npm
  • Socket score

Version published
Weekly downloads
1
decreased by-85.71%
Maintainers
1
Weekly downloads
 
Created
Source

Tabii, size KatanaClient sınıfı için örnek bir README.md dosyası hazırlayabilirim. İşte detaylı bir README.md örneği:


KatanaClient

KatanaClient, HTTP ve HTTPS istekleri yapmak için kullanılan Node.js tabanlı bir istemci kütüphanesidir. Bu kütüphane, çeşitli HTTP metodlarını destekler ve gelişmiş seçenekler sunar.

Kurulum

KatanaClient'ı projenize dahil etmek için aşağıdaki adımları izleyin:

  1. Projenizin bulunduğu dizinde terminal veya komut istemcisini açın.

  2. Aşağıdaki komutu çalıştırarak KatanaClient'ı npm ile yükleyin:

    npm install katana-client
    
  3. KatanaClient'ı projenizde kullanmak için require fonksiyonuyla içe aktarın:

    const KatanaClient = require('katana-client');
    

Kullanım

KatanaClient, çeşitli HTTP istek metodlarını destekler ve ayrıca isteğe bağlı olarak özelleştirilebilir ayarlar sağlar.

Başlangıç

const KatanaClient = require('katana-client');

// KatanaClient örneğini oluşturun
const client = new KatanaClient({
  timeout: 10000,     // İstek zaman aşımı (varsayılan: 5000 ms)
  maxRedirects: 5,    // Maksimum yönlendirme sayısı (varsayılan: 5)
  followRedirects: true, // Yönlendirmeleri takip etme (varsayılan: true)
  // Diğer seçenekler buraya eklenebilir
});

HTTP Metotları

KatanaClient, yaygın olarak kullanılan HTTP metodlarını destekler: GET, POST, PUT, DELETE, HEAD, OPTIONS, PATCH, TRACE, CONNECT.

Örnekler:

// GET isteği
client.get('https://jsonplaceholder.typicode.com/posts/1')
  .then(response => console.log('GET Response:', response))
  .catch(error => console.error('GET Error:', error));

// POST isteği
const postData = { title: 'foo', body: 'bar', userId: 1 };
client.post('https://jsonplaceholder.typicode.com/posts', postData)
  .then(response => console.log('POST Response:', response))
  .catch(error => console.error('POST Error:', error));

Dosya İşlemleri

Dosya indirme ve yükleme işlemleri için downloadFile ve uploadFile metodları kullanılabilir:

// Dosya indirme
client.downloadFile('https://example.com/file.pdf', './downloads/file.pdf')
  .then(filePath => console.log('File downloaded to:', filePath))
  .catch(error => console.error('Download Error:', error));

// Dosya yükleme
client.uploadFile('https://example.com/upload', './uploads/file.txt')
  .then(response => console.log('File uploaded:', response))
  .catch(error => console.error('Upload Error:', error));

Yeniden Deneme ve Akışlı İstekler

Başarısız isteklerin otomatik olarak yeniden denenmesi ve akışlı istekler için retryRequest ve streamRequest metodları mevcuttur:

// Yeniden deneme
client.retryRequest('GET', 'https://example.com/api/data', null, {})
  .then(response => console.log('Retry Response:', response))
  .catch(error => console.error('Retry Error:', error));

// Akışlı istek
client.streamRequest('https://example.com/stream/data')
  .then(stream => {
    stream.on('data', data => console.log('Stream data:', data));
    stream.on('error', error => console.error('Stream Error:', error));
  })
  .catch(error => console.error('Stream Request Error:', error));

İptal ve Hata Kontrolü

İstek iptali ve hata kontrolü için cancelRequest ve isRequestCancelled metodları kullanılabilir:

const req = client.get('https://example.com');
client.cancelRequest(req);

if (client.isRequestCancelled(req)) {
  console.log('Request was cancelled.');
}

Seçenekler

KatanaClient sınıfının başlatıcı fonksiyonuna aşağıdaki seçenekler sağlanabilir:

  • timeout: İstek zaman aşımı (varsayılan: 5000 ms)
  • maxRedirects: Maksimum yönlendirme sayısı (varsayılan: 5)
  • followRedirects: Yönlendirmeleri takip etme (varsayılan: true)
  • agent: HTTP(s) bağlantı havuzu ve keep-alive için ajan
  • proxy: Proxy ayarları
  • cert, key, ca: SSL/TLS sertifikası, özel anahtar ve sertifika yetkilisi
  • rejectUnauthorized: Yetkisiz SSL/TLS sertifikalarını reddetme (varsayılan: true)
  • maxSockets: Maksimum soket sayısı (varsayılan: 100)
  • maxFreeSockets: Maksimum boş soket sayısı (varsayılan: 10)
  • scheduling: Zamanlama stratejisi (fifo, lifo, random; varsayılan: fifo)

Lisans

MIT Lisansı altında lisanslanmıştır. Daha fazla bilgi için LICENSE dosyasına bakın.

Keywords

FAQs

Package last updated on 16 Jun 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc