有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

spotifywebapijava无效的授权代码

我来到这个图书馆是为了得到当前正在播放的曲目的名称。所以我想使用客户端凭证流,它给了我无效的用户名。在这里搜索了一下,发现你不应该用那些。因此,我继续进行授权代码流,我已经编写如下

public static void main(String... args) {
    TrackSong trackSong = new TrackSong();
    String code = getAuthorizationCode(trackSong.api);
    Logger.getAnonymousLogger().info("Authorization URL: "+code);
    try {
        AuthorizationCodeCredentials authorizationCodeCredentials = trackSong.api.authorizationCode(code).build().execute();
        trackSong.api.setAccessToken(authorizationCodeCredentials.getAccessToken());
        trackSong.api.setRefreshToken(authorizationCodeCredentials.getRefreshToken());
        Executors.newSingleThreadScheduledExecutor().scheduleAtFixedRate(trackSong::writeSong, 0, 10, TimeUnit.SECONDS);
    } catch (Exception e) {
        e.printStackTrace();
    }
}

private static String getAuthorizationCode(SpotifyApi api) {
    return api.authorizationCodeUri().state("x4xkmn9pu3j6ukrs8n")
                .scope("user-read-currently-playing,user-read-playback-state")
                .show_dialog(true)
                .build()
                .execute()
                .toString();
}

正在创建的实际SpotifyApi对象

new SpotifyApi.Builder().setClientId("2e411043bc7f44428f5ce91c328ac6b8")
.setClientSecret(SPOTIFY_SECRET)
.setRedirectUri(SpotifyHttpManager.makeUri("http://localhost:8888/"))
.build()

我希望它能继续处理程序的其余部分,但它只是抛出了BadRequestException。我没有尝试太多,因为我不知道要更改什么,但我尝试了不同的方式来获取授权代码。虽然我相信这是因为我没有处理回叫


共 (0) 个答案