- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
好吧,我一直在努力理解这个"template"的身份验证过程 project就是不明白。
我想做的是基本登录,这样我就可以获得我的授权 token ,我之前通过使用 SharedPreference(从未实际使用过 AccountManager)并从我的其余 Android 客户端访问它(通过自定义 session 管理器)。
到目前为止,我已经完成了第一部分。我可以获得我的授权 token 。
BoostrapAuthenticatorActivity.java:
/**
* Called when response is received from the server for authentication
* request. See onAuthenticationResult(). Sets the
* AccountAuthenticatorResult which is sent back to the caller. Also sets
* the authToken in AccountManager for this account.
*/
protected void finishLogin() {
final Account account = new Account(email, Constants.Auth.LZGO_ACCOUNT_TYPE);
if (requestNewAccount)
accountManager.addAccountExplicitly(account, password, null);
else
accountManager.setPassword(account, password);
final Intent intent = new Intent();
authToken = token;
userToken = user;
intent.putExtra(KEY_ACCOUNT_NAME, userToken);
intent.putExtra(KEY_ACCOUNT_TYPE, Constants.Auth.LZGO_ACCOUNT_TYPE);
if (authTokenType != null
&& authTokenType.equals(Constants.Auth.AUTHTOKEN_TYPE))
intent.putExtra(KEY_AUTHTOKEN, authToken);
setAccountAuthenticatorResult(intent.getExtras());
setResult(RESULT_OK, intent);
finish();
}
我如何访问这个值?如果你检查这个类,
BootstrapServiceProvider.java:
@Inject private ApiKeyProvider keyProvider;
@Inject private UserAgentProvider userAgentProvider;
/**
* Get service for configured key provider
* <p>
* This method gets an auth key and so it blocks and shouldn't be called on the main thread.
*
* @return bootstrap service
* @throws IOException
* @throws AccountsException
*/
public BootstrapService getService() throws IOException, AccountsException {
return new BootstrapService(keyProvider.getAuthKey(), userAgentProvider);
}
最后,提供者:
ApiKeyProvider.java:
@Inject private Activity activity;
@Inject private AccountManager accountManager;
/**
* This call blocks, so shouldn't be called on the UI thread
*
* @return API key to be used for authorization with a {@link com.android.lzgo.core.LzgoService} instance
* @throws AccountsException
* @throws IOException
*/
public String getAuthKey() throws AccountsException, IOException {
AccountManagerFuture<Bundle> accountManagerFuture = accountManager.getAuthTokenByFeatures(Constants.Auth.BOOTSTRAP_ACCOUNT_TYPE,
Constants.Auth.AUTHTOKEN_TYPE, new String[0], activity, null, null, null, null);
Log.d("ApiKeyProvider", "ApiKeyProvider= " + accountManagerFuture.getResult().getString(KEY_AUTHTOKEN));
return accountManagerFuture.getResult().getString(KEY_AUTHTOKEN);
}
但这让我得到了一个空值!我迷路了!
最佳答案
我不确定为什么 setAccountAuthenticatorResult(...)
没有正确应用 authtoken,但是我很幸运地添加了以下 accountManager.setAuthToken(。 ..)
调用 finishLogin()
if (authTokenType != null
&& authTokenType.equals(Constants.Auth.AUTHTOKEN_TYPE)) {
intent.putExtra(KEY_AUTHTOKEN, authToken);
accountManager.setAuthToken(account, authTokenType, authToken);
}
也许这与不使用 Parse.com 作为我们的后端有关?
关于安卓 Bootstrap : Need to pass the authToken to my request accept header,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13921283/
您好,我在调用时遇到了恢复 authToken 的问题 mAccountManager.blockingGetAuthToken(Auth.getAccount(), Auth.AUTH_TOKEN_
我有两个使用相同帐户类型的应用程序。当用户第一次打开第二个应用程序并且存在一个帐户时,我希望显示以下页面: 但是当我运行这段代码时没有任何反应: final AccountManagerFuture
我有一个非 gae、gwt 应用程序,它有一个模块,允许用户通过 google docs api 在线创建文档。 为此,我首先要求用户输入文档的名称和类型,然后通过 google docs api 使
无法完成 rest_framework.authtoken 的迁移 Running migrations for authtoken: - Migrating forwards to 0001_ini
我正在添加TokenAuthentication到我们的 Django 项目。一切都很顺利,我已经为 token 身份验证添加了迁移和单元测试: # Migration from django.db
我正在使用新 API 开发 Google Tasks 应用程序,但无法获得工作授权。我正在使用 Android AccountManager 获取 authToken,奇怪的是我收到一条错误消息,指出
我如何提出以下请求 $ curl -u eyJhbGciOiJIUzI1NiIsImV4cCI6MTM4NTY2OTY1NSwiaWF0IjoxMzg1NjY5MDU1fQ.eyJpZCI6MX0.X
我设法在 Android 中从 Google 获取了 AuthToken。现在我找不到如何使用此 token 在没有用户交互的情况下使用电子邮件 ID 和 authToken 发送电子邮件。 请提供一
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
创建 token 时出现上述错误,代码如下: from rest_framework import generics, permissions from rest_framework.response
我从开发人员那里获得了基于 Firabase Realtime DB 的 Ionic 应用程序的代码。当尝试启动应用程序时,我收到此错误消息。 [ng] src/app/data-service.se
我使用 RestFB 创建了一个 Facebook 应用程序。在我本地的环境中它运行良好。要将应用程序放到网络上,我需要获取 token 。我正在执行以下步骤: 使用应用 ID 和 key 从 Fac
我之前使用过 OAuth(使用 Twitter 和 PHP),它很简单。我正在尝试让 OAuth 与 EverNote API 示例一起工作 https://github.com/evernote/e
在我的 android 应用程序中,我创建了一个 gmail 登录。用户可以使用手机中已有的 gmail 凭据登录。问题是我没有在 android 中获得有效 token Gingerbread 操作
我的任务是为 Gmail 编写 IMAP 电子邮件客户端。到目前为止,我知道客户端应该通过 OAuth 进行身份验证(Google 也有一个 java library for IMAP auth)。但
我正在编写一个 Android 应用程序,它使用 AccountManager 来获取 token 。我可以通过 Android 应用程序与 Google Picasa 进行交互 - 它工作正常。 我
我的代码是 self.imgProfile.sd_setImage(with: URL(string: "imageURL"), placeholderImage: UIImage(named: "i
我正在尝试使用以下网址访问 Google 的待办事项提要: https://www.google.com/calendar/tdl?secid=&tdl={%22action_list%22%3A[{
我正在从网址调用obtain.auth_token,如下 url(r'^api-token/','rest_framework.authtoken.views.obtain_auth_token')
如何在 Liferay Velocity 中检索当前页面的 authToken? 例如,在 HTML 代码中有以下但我不知道是什么编码来检索为网页的当前 session 分配的 auth Token
我是一名优秀的程序员,十分优秀!