天天看點

OkHttp的簡單使用

引入OkHttp

在build.gradle的dependencies中添加如下引用

implementation 'com.squareup.okhttp3:okhttp:5.0.0-alpha.7'
implementation 'com.squareup.okio:okio:3.1.0'           

這樣Android就會自動下載下傳OkHttp。

使用OkHttp前的工作

在AndroidManifest.xml中添加如下語句,支援網絡通路

<uses-permission android:name="android.permission.INTERNET"/>           

然後再application中添加屬性

android:usesCleartextTraffic="true"           

支援通路http網頁

OkHttp GET請求具體用法

OkHttpClient client = new OkHttpClient(); //建立OkHttpClient執行個體
Request request = new Request.Builder()
     .url("https://www.baidu.com")//請求接口,預設為get方法
     .build();//建立Request對象
Response response = client.newCall(request).execute();//發送請求獲得伺服器傳回的資料
String responseData = response.body().string(); //得到傳回資料的具體内容           

OkHttp POST請求具體用法

POST請求比GET請求稍微複雜一些,需要先建構出一個RequestBody對象來存放待送出的參數,如:

RequestBody requestbody = new FormBody.Builder()
    .add("username","admin")
    .add("password","123456")
    .bulid();
Request request = new Request.Builder()
    .url("https//www.baidu.com")
    .post(requestBody)//調用post方法,傳入RequestBody對象
    .build();           

然後和GET請求一樣,調用 execute()方法來發送請求并擷取伺服器傳回的資料。