2017-12-04 6 views
0

の不正な形式のJSONを受け入れるユーザーを登録しようとすると、が不正な形式のJSONを1行目の行$で受け取ります。私はこれに関連する質問の大半を行ってきましたが、本当に私を助けた人はいませんでした。以下はサーバーへの接続を開始する登録プロセスです。

private void registerProcess(final String name,final String email,final String password){ 

    String tag_string_req = "req_register"; 
    //pDialog = new AlertDialog.Builder(getActivity()); 
    pDialog.setMessage("please wait"); 
    pDialog.show(); 

      Retrofit retrofit = new Retrofit.Builder() 
      .baseUrl(Constants.BASE_URL) 
      .addConverterFactory(GsonConverterFactory.create()) 
      .build(); 

    RequestInterface requestInterface = retrofit.create(RequestInterface.class); 

    User user = new User(); 
    user.setName(name); 
    user.setEmail(email); 
    user.setPassword(password); 
    ServerRequest request = new ServerRequest(); 
    request.setOperation(Constants.REGISTER_OPERATION); 
    request.setUser(user); 
    Call<ServerResponse> response = requestInterface.operation(request); 

    response.enqueue(new Callback<ServerResponse>() { 
     private View view; 

     public View getView() { 
      return view; 
     } 

     @Override 
     public void onResponse(Call<ServerResponse> call, retrofit2.Response<ServerResponse> response) { 

      ServerResponse resp = response.body(); 

      // if(resp !=null) 
      Toast.makeText(getApplicationContext(),response.message(), Toast.LENGTH_LONG).show(); 
      pDialog.dismiss(); 
     } 


     @Override 
     public void onFailure(Call<ServerResponse> call, Throwable t) { 

      // progress.setVisibility(View.INVISIBLE); 
      Log.d(Constants.TAG, "failed"); 
      Toast.makeText(getApplicationContext(), t.getLocalizedMessage(), Toast.LENGTH_LONG).show(); 
      pDialog.dismiss(); 


     } 
    }); 
} 

答えて

0

最初にレスポンスを確認してください。私はjsonオブジェクトのコレクションを取得していると思うが、それを単一のオブジェクトに変換しようとしている。あなたの応答が単一のjsonオブジェクトであることを確認するか、json配列の応答がある場合はコードをチューンアップしてください。あなたのコードは、実際には単一のjsonオブジェクトで動作します。

+0

どうすればよいですか – Mani

関連する問題