【问题标题】:Flutter spotify sdk - refresh access tokenFlutter spotify sdk - 刷新访问令牌
【发布时间】:2021-11-01 21:43:18
【问题描述】:

我正在使用以下包:https://pub.dev/packages/spotify_sdk

这个包提供了getAuthenticationToken方法,它返回一个访问令牌给spotify,用于我的服务器检索一些与用户相关的spotify数据:

authenticationToken = await SpotifySdk.getAuthenticationToken(
  clientId: dotenv.get('SPOTIFY_CLIENT_ID'),
  redirectUrl: dotenv.get('SPOTIFY_AUTH_REDIRECT_URL'),
  scope: 'user-read-email, user-top-read',
);

但是,此令牌会在 1 小时后过期。有没有办法,没有前端代码(只有服务器端),刷新这个令牌?我有哪些选择?

【问题讨论】:

    标签: flutter spotify


    【解决方案1】:

    tl;博士

    没有直接的方法可以通过包获取刷新令牌。但是还有其他方法可以绕过这个限制。见绕过

    功能可用性

    通常,Spotify auth api 会包含一个刷新令牌,但这个功能在 android sdk 中不存在(参见:flutter 包:#75 Android sdk:#12#220#225)虽然它受支持通过iosweb sdk

    如果应用程序只能从 ios 或 web 使用,即使 it would bring little value 支持的平台,flutter 包的维护者 would most likely accept a pr that exposes the refresh methods

    贡献功能

    如果你熟悉android开发,并且特性对你很重要,可以尝试自己将这个特性集成到android sdk中,然后暴露在flutter sdk中。

    这里已经在 fork 中完成了:

    制造商已经开通了pull request,但还没有回复(2018 年底开通)。

    绕过

    一种绕过设备(或服务器)上用户的would be to store the username and password 的方法,尽管从安全角度来看这会很糟糕。


    另一个灵感可能是this comment 来自一个通过他的服务器路由身份验证的 android-sdk 用户。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-06-26
      • 2015-07-17
      • 2018-02-21
      • 2018-02-18
      • 1970-01-01
      • 1970-01-01
      • 2021-07-19
      • 2021-10-11
      相关资源
      最近更新 更多