我想做一个基于“官方”MVVM、存储库模型的登录活动。
我已经看过Android Studio的“登录”模板,并多少理解了它的工作原理。下面的流程图显示了我如何规划类之间的数据流。该模板不包括WebService部分,而是立即返回令牌,而无需回调。
由于创建对VM/活动的引用(在回调中)是一种不好的做法,那么将令牌传播回VM(用虚线箭头表示)的选项是什么?
注意事项:
谢谢
您不需要在存储库中创建LiveData
。相反,您可以从VM调用存储库。登录(u,p)
并等待结果到达。结果出来后,只需更新虚拟机中的LiveData
实例。
无论如何,网络调用必须异步完成,或者您可以使用来自网络库(如Retrofit)的回调机制。
您的ViewModel
将如下所示(伪代码):
class LoginViewModel: ViewModel{
LiveData<Result> login(String username, String password){
LiveData<Result> resultLiveData = new MutableLiveData<Result>();
// Let it be an async. call from Retrofit
Repository.login(username, password, new Callback<Result>{
void onResult(Result result){
resultLiveData.value = result // update the livedata.
}
}
return resultLiveData;
}
}
我有一个从https://github.com/Azure-Samples/ms-identity-blazor-wasm/tree/main/WebApp-graph-user/Call-MSGraph.创建的blazor网络组装项目 它基本上是您使用时创建的项目。用于Blazor应用程序的net core模板,该应用程序通过AD B2B进行身份验证 然后我能够调用graph。用户登录时的api
致命:“https://github.com/scuzzlebuzzle/ol3-1.git/'”身份验证失败
我遵循教程系列:https://www.callicoder.com/spring-boot-security-oauth2-social-login-part-1/这是最好的教程,但是令牌不存储在数据库中,令牌的格式不适合我。 我需要一个访问令牌和刷新令牌,例如: 在通过谷歌(google)等社交账户进行身份验证后,我通过手动创建令牌,并重定向以获取令牌的一些数据,但令牌无效。 我收到回应 我有
我是Swagger的新手。 我使用Swagger UI来生成Swagger文档。我有两个API调用。第一个调用是基于用户名和密码生成令牌。第二次调用需要第一次调用生成的令牌。 我如何使用Swagger UI设置第二次调用的令牌?
我想使用我的GitLab帐户中的私有令牌克隆GitLab存储库,而不提示输入我的自动化脚本。 有人能给我一个样品吗? 我知道我可以使用用户和密码执行此操作: 我知道使用ssh密钥是可能的 但是,这两种选择都是不够的。
我正在尝试为我的应用程序构建一个身份验证解决方案。我使用React作为前端,使用API模式下的Rails作为后端。我有一个外部身份验证解决方案,我需要使用它。我无意中发现了Knock for JWT令牌管理,但我不理解文档,尤其是这部分“它必须有一个身份验证方法,类似于has_secure_password添加的方法”,因为由于我的外部身份验证服务,我没有用户模型。因此,在我的头脑中,登录请求将发