Tartışma

Gelişmiş Telegram Bildirim Botu: GraphQL ve Axios Interceptor Kullanımı Entegrasyonu

Başlatan IronSpecter · 29 Ağu 2026 13:26 · 2 Görüntülenme · 0 Yanıtlar
Konuyu Açan #0
Son yıllarda, Telegram botları birçok geliştirici için popüler bir bildirim aracı haline geldi. Özellikle, GraphQL API'leri ile entegrasyon sağlayarak, daha esnek ve güçlü bir yapıya sahip olan bu botlar, kullanıcıların ihtiyaçlarına göre özelleştirilebilir. Bu yazıda, GraphQL ve Axios interceptor kullanarak nasıl gelişmiş bir Telegram bildirim botu oluşturabileceğinizi detaylı bir şekilde ele alacağız.

Öncelikle, Telegram botu oluşturmak için @BotFather üzerinden bir bot almak gerekiyor. Bu botun token'ı daha sonra API isteklerimizde kullanılacaktır. Botunuzu oluşturduktan sonra, kullanıcılarınızla etkileşime geçmek için GraphQL API'sine bağlanmanız gerekecek. GraphQL, REST'e göre daha esnek veri sorgulama yetenekleri sunar; bu nedenle, yalnızca ihtiyaç duyulan veriyi alarak performansı artırabilirsiniz.

Axios, HTTP istekleri yapmak için yaygın olarak kullanılan bir kütüphanedir. Axios interceptor'ları, her istek öncesi veya sonrası belirli işlemleri gerçekleştirmenize olanak tanır. Örneğin, her isteğinize bir authorization header eklemek veya hata durumunda özel bir işlem yapmak için interceptor'lar oldukça kullanışlıdır.

Aşağıda, basit bir Axios interceptor kullanımını ve GraphQL ile Telegram botu entegrasyonunu gösteren bir örnek bulunmaktadır:

CODE
123456789101112131415161718192021222324252627282930313233343536373839import axios from 'axios';

const axiosInstance = axios.create({
  baseURL: 'https://your-graphql-endpoint.com/graphql',
});

// Interceptor ekleme
axiosInstance.interceptors.request.use(config => {
  config.headers['Authorization'] = 'Bearer YOUR_TOKEN';
  return config;
}, error => {
  return Promise.reject(error);
});

// GraphQL sorgusu
const sendNotification = async (message) => {
  const query = `
    mutation {
      sendMessage(input: { chat_id: 'YOUR_CHAT_ID', text: '${message}' }) {
        success
        error
      }
    }
  `;

  try {
    const response = await axiosInstance.post('', { query });
    if (response.data.errors) {
      console.error('Error sending message:', response.data.errors);
    } else {
      console.log('Message sent successfully:', response.data.data.sendMessage.success);
    }
  } catch (error) {
    console.error('Network error:', error);
  }
};

// Kullanım
sendNotification('Merhaba, Telegram botundan bir bildirim geliyor!');


Bu örnekte, bir GraphQL sorgusu aracılığıyla Telegram'da bir mesaj göndermekteyiz. Axios interceptor'ı, her isteğe otomatik olarak authorization header ekleyerek, API ile güvenli bir iletişim sağlamaktadır.

Sonuç olarak, GraphQL ve Axios interceptor kullanarak geliştirdiğiniz Telegram bildirim botu, esneklik ve performans açısından önemli avantajlar sunar. Bu tür bir entegrasyon, uygulamanızın kullanıcı etkileşimini artırırken, aynı zamanda geliştirici deneyimini de iyileştirir. Geliştirdiğiniz botlar hakkında daha fazla bilgi ve detaylı örnekler paylaşabilirsiniz.

Yanıt vermek için giriş yapmış olmalısınız.

0 alıntı seçildi