失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > Android 网络请求(OKHttp框架)

Android 网络请求(OKHttp框架)

时间:2021-12-24 13:21:55

相关推荐

Android 网络请求(OKHttp框架)

效果图:

项目结构:

导入OkHttp依赖库:implementation 'com.squareup.okhttp3:okhttp:3.4.1’

OkHttp.java

public class OkHttp {private static final MediaType JSON = MediaType.parse("application/json;charset=utf-8");//服务器地址private static final String URL = "http://192.168.1.789:8088/transportservice/action/";public static JSONObject send(String action,JSONObject parmeter){JSONObject jsonObject1 = null;Response response = null;OkHttpClient client = new OkHttpClient();RequestBody requestBody = RequestBody.create(JSON, parmeter.toString());Request request = new Request.Builder().url(URL + action).post(requestBody).build();try {response = client.newCall(request).execute();if (response.isSuccessful()) {String str = response.body().string();//将请求头转换成JSON字符串Log.e("Tag", "str:" + str);jsonObject1 = new JSONObject(str);//转换回JSON数据并返回} else {Log.e("Tag", "失败");}} catch (IOException e) {e.printStackTrace();} catch (JSONException e) {e.printStackTrace();}return jsonObject1;}}

MainActivity.java

public class MainActivity extends AppCompatActivity {private static final String TAG = "MainActivity"; //Log-Name@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);queryOkHttp();}//请求服务器数据private void queryOkHttp() {new Thread(new Runnable() {@Overridepublic void run() {try {JSONObject jsonObject = new JSONObject();jsonObject.put("UserName", "user1"); //提交数据给服务器-数据1jsonObject.put("CarId",1); //提交数据给服务器-数据2//参数一:服务器地址拼接//参数二:提交数据final JSONObject result = OkHttp.send("GetCarAccountBalance.do", jsonObject);Log.i(TAG, "run: " + result); //拿到服务器返回的JSON数据后,打印结果} catch (JSONException e) {e.printStackTrace();}}}).start();}}

如果觉得《Android 网络请求(OKHttp框架)》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。