2.9 KiB
2.9 KiB
Blizzard Setup für WhatToPlay
API OAuth Konfiguration
1. Battle.net Developer Portal öffnen
- Gehe zu https://develop.battle.net
- Melde dich mit deinem Battle.net Account an
2. Application registrieren
- Klicke auf "Create Application"
- Name: "WhatToPlay" (oder dein Projektname)
- Website: https://whattoplay.local (für Development)
- Beschreibung: "Game Library Manager"
- Akzeptiere die ToS
3. OAuth Credentials kopieren
Nach der Registrierung siehst du:
- Client ID - die öffentliche ID
- Client Secret - HALTEN Sie geheim! (Nur auf Server, nie im Browser!)
4. Redirect URI setzen
In deiner Application Settings:
Redirect URIs:
https://whattoplay-oauth.workers.dev/blizzard/callback (Production)
http://localhost:3000/auth/callback (Development)
config.local.json Setup
{
"blizzard": {
"clientId": "your_client_id_here",
"clientSecret": "your_client_secret_here",
"region": "eu"
}
}
Region Codes:
us- North Americaeu- Europekr- Koreatw- Taiwan
Blizzard Games, die unterstützt werden
- World of Warcraft - Character-basiert
- Diablo III - Hero-basiert
- Diablo IV - Charakter-basiert
- Overwatch 2 - Account-basiert
- Starcraft II - Campaign Progress
- Heroes of the Storm - Character-basiert
- Hearthstone - Deck-basiert
Development vs Production
Development (Lokal)
# Teste mit lokalem Token
npm run import
# Script verwendet config.local.json
Production (Mit Cloudflare Worker)
Frontend → Cloudflare Worker → Blizzard OAuth
↓
Token Exchange
(Client Secret sicher!)
Siehe: CLOUDFLARE-WORKERS-SETUP.md
Troubleshooting
"Client ID invalid"
- Überprüfe dass die Client ID korrekt kopiert wurde
- Stelle sicher dass du im Development Portal angemeldet bist
"Redirect URI mismatch"
- Die Redirect URI muss exakt übereinstimmen
- Beachte Protocol (https vs http)
- Beachte Port-Nummern
"No games found"
- Dein Account muss mindestens 1 Blizzard Game haben
- Bei Diablo III: Character muss erstellt sein
- Charaktere können bis zu 24h brauchen zum Erscheinen
Token-Fehler in Production
- Client Secret ist abgelaufen → Neu generieren
- Überprüfe Cloudflare Worker Logs:
npx wrangler tail whattoplay-blizzard
Sicherheit
🔒 Wichtig:
- Client Secret NIEMALS ins Frontend committen
- Nutze Cloudflare KV Store oder Environment Variables
- Token mit Ablaufdatum (expires_in) prüfen
- Token nicht in Browser LocalStorage speichern (nur Session)