Отримання ключа сеансу pyLast 5.5 через проксі
Налаштуйте маршрут об'єкта network до того, як pyLast надішле запити токена й ключа сеансу.
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-проксі; ці точки не передають облікові дані постачальника. Останній виклик отримує токен автентифікації через налаштований об'єкт network. Попросіть користувача відкрити отриманий URL і авторизувати застосунок.
Після авторизації отримайте ключ сеансу тим самим generator:
network.session_key = generator.get_web_auth_session_key(authorization_url)
generator зберігає токен, пов'язаний із цим URL. Якщо зберегти той самий network і generator на обох кроках, налаштований маршрут і стан автентифікації, що очікує, збережуться.
Коли ключ уже існує
Якщо ключ сеансу вже збережено, передайте його як session_key під час створення network, а потім увімкніть проксі перед першим викликом API. Конструктору не потрібно запитувати інший ключ. Пошук лише для читання також може використовувати налаштований network, не запускаючи цей потік авторизації.