2015-10-13 56 views
1

我正在学习改造。我已经完成了创建一个类login使用改造(通过以下教程在互联网上)。改造:使用改造将数据发送到服务器

现在,我尝试创建其他进程sign up。我很困惑哪一个我应该在login函数中改变。说实话,我无法理解这些概念。

这个我几个login的代码:

UserLogin.java

public class UserLog { 

    private String id; 
    private String username; 
    private String password; 
//getter and setter... 

RestCallBack.java

public abstract class RestCallBack<T> implements Callback<T> { 

    public abstract void failure(RestError restError); 

    @Override 
    public void failure (RetrofitError error){ 
     RestError restError = (RestError) error.getBodyAs(RestError.class);// create your own class as 
     // how the error message gonna showup from server side if there is an error 

     if(restError != null){ 
      failure(restError); 
     }else{ 
      failure(new RestError(error.getMessage())); 
     } 
    } 
} 

RestError.java

public class RestError { 

    public Integer errorCode; 
    public String extendedMessage; 
    private String message; 
    private String moreInfo; 
    private Integer status; 

//getter and setter 

SessionRequest.j AVA

public class SessionRequestInterceptor implements RequestInterceptor { 

    private static final String TAG = SessionRequestInterceptor.class.getSimpleName(); 

    @Override 
    public void intercept(RequestFacade request) { 
     request.addHeader("Content-Type", "application/json");/* 
     you can add header here if you need in your api 
     */ 
    } 
} 

RestLoginCLient.java

public class RestClient_Login { 

    private static RestApi_login REST_CLIENT; 
    private static String ROOT = "http://192.168.10/testapp"; 


    static { 
     setUpRestClient(); 
    } 


    public static RestApi_login get() 
    {return REST_CLIENT;} 

    private static void setUpRestClient(){ 
     RestAdapter restAdapter = new RestAdapter.Builder() 
       .setLogLevel(RestAdapter.LogLevel.FULL) 
       .setEndpoint(ROOT) 
       .setClient(new OkClient(new OkHttpClient())) 
       .setRequestInterceptor(new SessionRequestInterceptor()) 
       .build(); 

     REST_CLIENT = restAdapter.create(RestApi_login.class); 
    } 

RestApi.java

public interface RestApi_login { 
      @POST("/user/login") 
      void login(@Body UserLog user, 
         RestCallBack<LoginResponse> callBack); 
} 

LoginResponse.java

public class LoginResponse { 
    public String email; 
    public String id; 
    public String error; 
    public UserLog resp; 

    LoginResponse(){} 

//getter and setter 

指导我哪一个代码,我应该在邻改变rder我可以创建我的sign up过程

回答

1

对于登录,你可以关注this链接。这也让我们一步步了解代码中发生了什么。所以你也了解你在做什么。

+0

'注册'上面哪个代码应该改变? –

0

我想你最好先开始使用Retrofit而不是OkHttp

1)定义您的响应java POJO类。

2)定义你的请求interface类。

3)设置callback响应(成功/失败)。

4)定义RestAdapter并通过您的界面消耗您的API

这是基本的方法和更容易。

+0

我想通过做。你说过的这些代码中的几个,我已经理解了(也许不是专家)。当我创建上面实现的项目时,我更快地理解。 –

+0

我想如果你了解我描述的4个步骤,那么应该没有问题。你的代码有点混乱和混乱,你应该重新定义你将实现你的请求,响应和调试的方式,以便理解你的通信中出现了什么问题,然后询问你得到的任何错误或错误代码。但是这个代码不会随你的问题而发生变化。 –

+1

是的,我同意你的意见。我相信我的问题的答案是在我的代码中,哈哈!但我仍然在寻找它在哪里。即使我知道上面描述的几个步骤,有时候,我仍然面临困难。 –