1、權限:
<uses-permission android:name="android.permission.INTERNET" />
implementation 'com.squareup.okhttp3:okhttp:3.4.1'
2、GET:
new XXXTask ().execute("http://192.168.191.128:9000/xx");private class XXXTask extends AsyncTask<String, Void, String> {protected String doInBackground(String... urls) {Response response = null;String responseData = "null";OkHttpClient client = new OkHttpClient();Request request = new Request.Builder().get().url(urls[0]).build();try {response = client.newCall(request).execute();responseData = response.body().string();} catch (IOException e) {e.printStackTrace();responseData = "error:" + e.toString();}return responseData;}protected void onPostExecute(String result) {if (result != null) {if (result.startsWith("error")){Toast.makeText(MainActivity.this, result, Toast.LENGTH_LONG).show();return;}try {JSONObject jsonObject = new JSONObject(result);JSONArray jsonArray = jsonObject.getJSONArray("body");for (int i = 0; i < jsonArray.length(); i++) {JSONObject jsonObjectTempt = jsonArray.getJSONObject(i);items.add(jsonObjectTempt.getString("userName") );}} catch (JSONException e) {e.printStackTrace();Toast.makeText(MainActivity.this, e.toString(), Toast.LENGTH_LONG).show();}}}}
3、POST:
new XXTask().execute("http://192.168.191.128:9000/xxx", selectedItem, mcode, serial);private class XXTask extends AsyncTask<String, Void, String> {protected String doInBackground(String... urls) {Response response = null;String responseData = "null";OkHttpClient client = new OkHttpClient();RequestBody requestBody = new FormBody.Builder().add("mcode", urls[2]).add("user", urls[1]).add("serial", urls[3]).build();Request request = new Request.Builder().post(requestBody).url(urls[0]).build();try {response = client.newCall(request).execute();responseData = response.body().string();} catch (IOException e) {code.setText("");e.printStackTrace();responseData = "error:" + e.toString();}return responseData;}protected void onPostExecute(String result) {code.setText("");if (result != null) {if (result.startsWith("error")){Toast.makeText(MainActivity.this, result, Toast.LENGTH_LONG).show();return;}try {JSONObject jsonObject = new JSONObject(result);String resultTempt = jsonObject.getString("result");if (resultTempt.equals("success")){Toast.makeText(MainActivity.this, "記錄成功", Toast.LENGTH_SHORT).show();}else if(resultTempt.equals("fail")){String bodyTempt = jsonObject.getString("body");Toast.makeText(MainActivity.this, bodyTempt, Toast.LENGTH_SHORT).show();}else {Toast.makeText(MainActivity.this, result, Toast.LENGTH_SHORT).show();}} catch (JSONException e) {e.printStackTrace();Toast.makeText(MainActivity.this, e.toString(), Toast.LENGTH_LONG).show();}}}}
POST后臺 controller
@PostMapping("/xx")@ResponseBody@Transactionalpublic String xx(@RequestParam(name = "mcode") String mcode,@RequestParam(name = "serial") String serial,@RequestParam(name = "user") String user)