TikTok Chat Reader, Google Sheets API entegrasyonu sunarak aşağıdaki özellikleri sağlar:
- Kullanıcı kimlik doğrulama
- Hediye verilerini kaydetme
- Kullanıcı notlarını yönetme
- Kaydedilen ana bilgisayarları yönetme
-
keys.json Dosyasının Oluşturulması
# Örnek dosyayı kopyalayın cp keys.example.json keys.json -
keys.json Dosyasını Yapılandırma
{ "type": "service_account", "project_id": "proje-adiniz", "private_key_id": "private_key_id", "private_key": "-----BEGIN PRIVATE KEY-----\nÖZEL_ANAHTARINIZ\n-----END PRIVATE KEY-----\n", "client_email": "email@proje-adiniz.iam.gserviceaccount.com", "client_id": "client_id", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://oauth2.googleapis.com/token", "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/email%40proje-adiniz.iam.gserviceaccount.com", "universe_domain": "googleapis.com" }
-
Proje Oluşturma
- Google Cloud Console gidin
- Yeni bir proje oluşturun veya mevcut projeyi seçin
-
API Etkinleştirme
- Google Sheets API'yi etkinleştirin
- Google Drive API'yi etkinleştirin (gerekirse)
-
Hizmet Hesabı Oluşturma
- IAM & Admin → Service Accounts gidin
- Create Service Account tıklayın
- Hizmet hesabı için bir ad ve açıklama girin
- Create and Continue tıklayın
- İzinleri atlayın (Done)
- Oluşturulan hizmet hesabını tıklayın
- Keys sekmesine gidin
- Add Key → Create new key
- JSON seçeneğini seçin ve Create tıklayın
- İndirilen JSON dosyasını
keys.jsonolarak kaydedin
-
Google Sheets Paylaşımı
- Verileri kaydetmek için bir Google Sheets e-tablosu oluşturun
- E-tablonuza hizmet hesabı e-posta adresini ekleyin (Paylaş → Kişi ekle)
- Hizmet hesabına "Düzenleyici" izni verin
.env dosyasına aşağıdaki değişkenleri ekleyin:
GOOGLE_SHEET_ID=ana_e_tablo_id
GOOGLE_USER_SHEET_ID=kullanici_e_tablo_id
Sheet ID Nasıl Bulunur?
- Google Sheets URL'sinden alın:
https://docs.google.com/spreadsheets/d/SPREADSHEET_ID/edit#gid=0
Sunucu, Google Sheets API ile ilgili hataları otomatik olarak yönetir:
- Dosya Bulunamadı:
keys.jsondosyası yoksa, Google Sheets özellikleri devre dışı bırakılır - Geçersiz Kimlik Bilgileri:
keys.jsondosyasındaki bilgiler hatalıysa, API kullanılmaz - Bağlantı Hataları: API çağrıları sırasında hata oluşursa, sunucu çökmez ve log kaydı tutulur
Tüm Google Sheets API hataları sunucu loglarına kaydedilir:
Google Sheets çağrısı başarısız oldu (functionName): error message
- Kullanıcı girişi çalışır
- Hediye verileri kaydedilir
- Notlar yönetilebilir
- Kaydedilen ana bilgisayarlar yönetilebilir
- Kullanıcı girişi çalışmaz (hata mesajı gösterir)
- Hediye verileri kaydedilmez (hata mesajı gösterir)
- Google Sheets'e bağlı tüm özellikler devre dışıdır
- Diğer tüm özellikler normal çalışır
-
"keys.json dosyası bulunamadı" hatası
- Çözüm:
keys.example.jsondosyasınıkeys.jsonolarak kopyalayın
- Çözüm:
-
"Geçersiz kimlik bilgileri" hatası
- Çözüm:
keys.jsondosyasının doğru yapılandırıldığından emin olun
- Çözüm:
-
"Erişim reddedildi" hatası
- Çözüm: Hizmet hesabına Google Sheets erişim izni verin
-
"Sunucu çöküyor" hatası
- Çözüm:
server-final.jsdosyasını kullanın (otomatik hata yönetimi içerir)
- Çözüm:
Google Sheets entegrasyonunun çalışıp çalışmadığını test etmek için:
- Sunucuyu başlatın
- Konsol loglarını kontrol edin
- "Google Sheets API başarıyla etkinleştirildi" mesajını arayın
Aşağıdaki komutla Google Sheets bağlantısını test edebilirsiniz:
node -e "
const fs = require('fs');
try {
const keys = JSON.parse(fs.readFileSync('keys.json', 'utf8'));
console.log('keys.json dosyası geçerli');
console.log('Proje ID:', keys.project_id);
console.log('E-posta:', keys.client_email);
} catch (error) {
console.error('keys.json dosyası okunamadı:', error.message);
}
"keys.jsondosyasını asla GitHub'a yüklemeyin (gitignoredosyasında olduğundan emin olun)- Hizmet hesabı anahtarlarını güvenli bir yerde saklayın
- Hizmet hesabına sadece gerekli izinleri verin
- Düzenli olarak anahtarları yenileyin
- Google Sheets özelliklerini test etmek için geliştirme ortamında ayrı bir proje kullanın
- Hata yönetimi için
safeGoogleSheetsCallfonksiyonunu kullanın - API çağrılarının sonuçlarını her zaman kontrol edin
- Log mesajlerini açıklayıcı tutun