【发布时间】:2017-10-03 07:07:36
【问题描述】:
我想对用户端点进行一个简单的 api 调用(注册一个新用户)并通过响应获取身份验证令牌。谁能解释这两个网络调用之间的区别以及在我的情况下哪种实现是正确的?
private void registerProcess(User user) {
mSubscriptions.add(Network.getRetrofit().getUserToken(user)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Action1<Response<TokenResponse>>() {
@Override
public void call(Response<TokenResponse> tokenResponse) {
if (tokenResponse.code() == 200) {
mProgressbar.setVisibility(View.GONE);
showSnackBarMessage("Registration success!");
} else {
mProgressbar.setVisibility(View.GONE);
showSnackBarMessage("Registration failed");
}
}
}));
}
private void registerProcess(User user) {
Network.getRetrofit().getUserToken(user)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Subscriber<Response<TokenResponse>>() {
@Override
public void onCompleted() {
/// what to do here???
}
@Override
public void onError(Throwable e) {
mProgressbar.setVisibility(View.GONE);
showSnackBarMessage("Registration failed");
}
@Override
public void onNext(Response<TokenResponse> tokenResponse) {
if (tokenResponse.code() == 200) {
mProgressbar.setVisibility(View.GONE);
showSnackBarMessage("Registration success!");
}
}
});
}
【问题讨论】:
标签: android rx-java retrofit2 okhttp rx-android