Το pyLast μπορεί να στέλνει αιτήματα ελέγχου ταυτότητας ήδη κατά την κατασκευή ενός αντικειμένου network, εφόσον δοθούν αρκετά στοιχεία σύνδεσης. Για να ρυθμίσετε πρώτα τη διαδρομή, δημιουργήστε το network χωρίς να ενεργοποιήσετε αυτή τη ροή ελέγχου ταυτότητας.

Το παρακάτω παράδειγμα χρησιμοποιεί τη διεπαφή proxy-URI του pyLast 5.5 και τον δημόσιο βοηθό ελέγχου ταυτότητας ιστού:

import pylast

network = pylast.LastFMNetwork(api_key=api_key, api_secret=api_secret)
network.enable_proxy('http://proxy.example.net:8080')

generator = pylast.SessionKeyGenerator(network)
authorization_url = generator.get_web_auth_url()

Η εφαρμογή παρέχει το δικό της API key και secret. Για δημόσια διαδρομή του Last.fm API που επιτρέπει μη πιστοποιημένους μεσάζοντες, χρησιμοποιήστε στο enable_proxy ένα τελικό σημείο από τη λίστα διαμεσολαβητών HTTP· αυτά τα σημεία δεν παρέχουν τα διαπιστευτήρια του παρόχου. Η τελευταία κλήση ανακτά το token ελέγχου ταυτότητας μέσω του ρυθμισμένου αντικειμένου network. Ζητήστε από τον χρήστη να ανοίξει το URL που προκύπτει και να εξουσιοδοτήσει την εφαρμογή.

Μετά την εξουσιοδότηση, χρησιμοποιήστε τον ίδιο generator για το κλειδί συνεδρίας:

network.session_key = generator.get_web_auth_session_key(authorization_url)

Ο generator διατηρεί το token που σχετίζεται με αυτό το URL. Αν κρατήσετε το ίδιο network και τον ίδιο generator σε αυτά τα δύο βήματα, διατηρούνται η ρυθμισμένη διαδρομή και η εκκρεμής κατάσταση ελέγχου ταυτότητας.

Όταν υπάρχει ήδη κλειδί

Αν υπάρχει ήδη αποθηκευμένο κλειδί συνεδρίας, περάστε το ως session_key κατά τη δημιουργία του network και μετά ενεργοποιήστε τον διαμεσολαβητή πριν από την πρώτη κλήση API. Ο κατασκευαστής δεν χρειάζεται να ζητήσει άλλο κλειδί. Οι αναζητήσεις μόνο για ανάγνωση μπορούν επίσης να χρησιμοποιούν το ρυθμισμένο network χωρίς να ξεκινούν αυτή τη ροή εξουσιοδότησης.

Σχετικά άρθρα