私はjson形式でサーバーからすべてのユーザーデータを取得しようとしています。 PHPはコードをクールに生成しますが、私はokttp Responseですべてのjsonを取得できません。実際にはjsonの一部だけをロードしているわけではありません。OkHttp3がサーバーからすべてのjsonデータをロードしない
プラス:私はこのコードを使用する理由は、私はログインプロセスでサーバーからすべてのユーザーデータを取りたいです。ここ は
import android.os.AsyncTask;
import android.util.Log;
import com.example.android.shopping.Helper.Tags;
import com.example.android.shopping.Model.Suggestion;
import com.example.android.shopping.Model.product;
import com.example.android.shopping.Model.user;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import okhttp3.MultipartBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
/**
* Created by Android on 7/21/2016.
*/
public class SelectAll_INFO_NetworkCallTask extends AsyncTask <String,Void,String>{
public static List<product> listOfProduct=new ArrayList<>();
public static List<Suggestion> listOfSuggestion=new ArrayList<>();
public static user myUser=new user();
public user getUser=new user();
private OkHttpClient client=new OkHttpClient();
String Result="";
public SelectAll_INFO_NetworkCallTask(user user)
{
this.getUser = user;
}
@Override
protected String doInBackground(String... params) {
try {
RequestBody requestBody;
requestBody = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addFormDataPart("action", getUser.getStatus())
.addFormDataPart("userId",String.valueOf(getUser.getUsId()))
.build();
Request request = new Request.Builder()
.url(Tags.SelectAllAddress)
.post(requestBody)
.build();
Response response = client.newCall(request).execute();
Result=response.body().string();
return Result;
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(String o) {
super.onPostExecute(o);
Log.d("Output is:",o);
}
}
で私のコードであり、これは私はそれを呼び出す行う方法です:
public void RegForm(View view)
{
/* Intent intent=new Intent(this,RegisterUserActivity.class);
startActivity(intent);*/
user myUser=new user();
myUser.setStatus("palt");
myUser.setUsId(22);
SelectAll_INFO_NetworkCallTask infoCallTask=new SelectAll_INFO_NetworkCallTask(myUser);
infoCallTask.execute();
}
ともthis is the expected and gotten data i shared on gist
どのようにデータを確認していますか? – Bryan
私はlogcatでデータをチェックしています。私はLog.dでデータを表示することができます( "Output is:"、o); inPostExecuteで – AndroidDev