我是RxJava新手,但我喜欢它。而现在我有小问题了。我使用的是RxJava
+retfit
。
如果我有有效的用户令牌,我会得到API的响应,但如果令牌无效,我必须刷新令牌并尝试再次发出请求。
如何使用RXJava实现它?
试试这个有我的知识
service.normalRequest()
.flatMap( new Func1<Response, Observable<Response>>() {
@Override
public Observable<Response> call(Response response) {
if (response.code() == 403) {
return service.refreshToken(refreshRequest)
.flatMap(new Func1<Response, Observable<Response>>() {
@Override
public Observable<Response> call(Response response) {
return service.normalRequest();
}
});
} else {
return Observable.just(response);
}
}
}).subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(
new Subscriber<Response>() {
@Override
public void onCompleted() {
}
@Override
public void onError(Throwable e) {
}
@Override
public void onNext(Response response) {
}
});
若要添加一个关系,点击工具栏的 “关系”按钮,并由子实体拖拉一个属性到父实体的属性。若要显示或隐藏链接的名标签,简单地在属性窗格中勾选或取消勾选“显示名”选项。 当你移动滑鼠到一个关系连接器时,父和子实体的边界会分别变为绿色和蓝色。此外,父和子实体的参考属性均会高亮显示。 在画布中关系对象的弹出式菜单选项包括: 选项 描述 设计关系 在实体设计器中编辑关系。 基数在 实体名1 设置基数在实体名1:
若要添加一个关系,点击工具栏的 “关系”按钮,并由子实体拖拉一个属性到父实体的属性。若要显示或隐藏链接的名标签,简单地在属性窗格中勾选或取消勾选“显示名”选项。 当你移动滑鼠到一个关系连接器时,父和子实体的边界会分别变为绿色和蓝色。此外,父和子实体的参考属性均会高亮显示。 在画布中关系对象的弹出式菜单选项包括: 选项 描述 设计关系 在实体设计器中编辑关系。 基数在 实体名1 设置基数在实体名1:
若要添加一个新的实体,点击工具栏的 “实体”按钮,并点击画布的任意位置。你可以从浏览器的模型选项卡添加一个现有的实体,简单地从模型选项卡拖放实体到画布。 如果图表符号设置为默认, 图标代表属性为一个主键。而 图标则代表属性为一个索引。 【注意】如果你右击属性,你可以选择添加、插入、删除、重命名属性及设置属性为主键。 在画布中实体对象的弹出式菜单选项包括: 选项 描述 设计实体 在“实体设计器”中编
若要添加一个新的实体,点击工具栏的 “实体”按钮,并点击画布的任意位置。你可以从浏览器的模型选项卡添加一个现有的实体,简单地从模型选项卡拖放实体到画布。 如果图表符号设置为默认, 图标代表属性为一个主键。而 图标则代表属性为一个索引。 【注意】如果你按住 Control 键并点按属性,你可以选择添加、插入、删除、重命名属性及设置属性为主键。 在画布中实体对象的弹出式菜单选项包括: 选项 描述 设计
我想允许用户重置他们的密码。为了做到这一点,我首先检查他们的电子邮件是否存在于数据库中,如果存在,我向他们发送一封电子邮件,其中包含指向重置密码页面的链接。为了确保链接是安全的,后者是用jwt令牌制作的,该令牌仅对15mn有效。 但是,无法访问该url,因为有“.”在jwt中: < code > http://www . myapp . com/reset-password/eyjhbgcioin
是否可以将oauth1 3LO访问令牌和机密迁移到oauth2刷新令牌? 1){“错误”:“unauthorized_client”} 从云控制台使用有效的client_id和client_secret。看起来client_secret是错误的,但我们重新检查并使用了不同的应用程序--同样的问题。 2)我们有一个测试web oauth2应用程序,错误为:{“error”:“disabled_cli