gpt4 book ai didi

java - SoundCloud 官方 Java ApiWrapper,保存 token 的请求被拒绝并显示 401

转载 作者:行者123 更新时间:2023-12-01 14:33:44 24 4
gpt4 key购买 nike

当我输入用户名和密码时,我能够正确进行身份验证并获得有效的 token ,然后我打算存储此 token ,以便返回的用户不必再次输入用户名和密码。

因此,当用户回来时,我检索 token 并创建 ApiWrapper 的新实例,将 token 作为参数传递,当我发出请求时,它不适用于“401 Unauthorized”。

很明显我在某个地方做错了什么,但我被卡住了,我似乎找不到这里的问题。

我将 token 存储为字符串:

private void storeAccessToken(Token token) {
SharedPreferences settings = getSharedPreferences(Constants.PREFS_SOUNDCLOUD_NAME, MODE_PRIVATE);
SharedPreferences.Editor editor = settings.edit();
editor.putString("accessTokenToken", token.toString());
editor.commit();
}

然后当我检索它时,我会这样做:

private Token getAccessToken() {
SharedPreferences settings = getSharedPreferences(Constants.PREFS_SOUNDCLOUD_NAME, MODE_PRIVATE);
String token = settings.getString("accessTokenToken", "");
if (token!=null && !"".equals(token)){
return new Token(token, "refresh_token");
}
return null;
}

我从 ApiWrapper 实例检索 token ,它不为 NULL。

任何提示或示例将不胜感激,

提前致谢。

最佳答案

好吧,我终于找到问题了。我存储 token 的方式是错误的。 Token.toString() 方法实际上是用于日志记录目的,仅此而已。

这就是我现在存储和检索 token 的方式:

private void storeAccessToken(Token token) {
SharedPreferences settings = getSharedPreferences(Constants.PREFS_SOUNDCLOUD_NAME, MODE_PRIVATE);
SharedPreferences.Editor editor = settings.edit();
editor.putString("access", token.access);
editor.putString("refresh", token.refresh);
editor.commit();
}

private Token getAccessToken() {
SharedPreferences settings = getSharedPreferences(Constants.PREFS_SOUNDCLOUD_NAME, MODE_PRIVATE);
String access = settings.getString("access", "");
String refresh = settings.getString("refresh", "");
if (access!=null && refresh!=null && !"".equals(access) && !"".equals(refresh)){
return new Token(access, refresh);
}
return null;
}

谢谢

关于java - SoundCloud 官方 Java ApiWrapper,保存 token 的请求被拒绝并显示 401,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16659427/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com