Dropbox API v2-Fix für den Neotoma-Synchronisierungsserver

Im Rahmen meines heutigen Arbeitssprints beim IndieWebCamp Berlin ist es mir gelungen, einen aufsehenerregenden Fehler zu beheben, der in der Produktion für den Sync-Server auf Neotoma aufgetreten ist, und einen Backup-Job für meine neuesten Foursquare-/Swarm-Check-Ins auszuführen.

Im Rahmen meines heutigen Arbeitssprints beim IndieWebCamp Berlin ist es mir gelungen, einen auffälligen Fehler zu beheben, der offenbar seit dem 28. September 2017 für sync-server auf Neotoma.io in Produktion ist, als Dropbox seine API vollständig eingestellt hat v1 zugunsten von API v2.

Ich war mir dieses Fehlers erst diese Woche bewusst, da die Fehlerbehandlung in der Produktion nicht so eingestellt war, dass sie mich benachrichtigt (per E-Mail oder auf andere Weise), aber das Einrichten dieser Benachrichtigung ist jetzt eine priorisierte Aufgabe, um stille Probleme wie dieses in Zukunft zu vermeiden.

Beim Durchforsten des Codes stellte sich heraus, dass die Passport-Implementierung für Dropbox bei der Initialisierung seiner Strategie speziell keinen „apiVersion“-Parameter übergab und daher ohne mein Wissen standardmäßig auf Dropboxs API v1 zurückgriff.

Ich habe „apiVersion“ hier als Parameter und auch als Attribut hinzugefügt Speichermodell, insbesondere auf „2“ für das Speicherdokument von Dropbox.

Hinweis: Dieses Attribut muss offenbar eine Zeichenfolge und keine Ganzzahl sein. Letzteres funktionierte bei mir nicht, als ich es versuchte.

„ req.strategy = neue PassportStrategy.Strategy({ apiVersion: document.apiVersion, clientID: document.clientId, clientSecret: document.clientSecret, ConsumerKey: document.clientId, ConsumerSecret: document.clientSecret, callbackURL: ${req.protocol}://${req.get('host')}${path.resolve('/', Model.modelType(), document.slug, 'auth-callback')}, passReqToCallback: wahr, ProfileFields: ['id', 'displayName', 'emails'] }... „

Dadurch funktioniert die Dropbox-Authentifizierung jetzt wieder und ich konnte einen Backup-Job für meine Foursquare-/Swarm-Check-ins ausführen und die aktuellsten seit der letzten Sicherung Anfang des Sommers mit meiner Dropbox synchronisieren.

2 Min. gelesentechnical
Aktie