Retrofit与Post封装

来源:互联网 发布:js 转换json对象 编辑:程序博客网 时间:2024/06/14 16:43
RequestApi 
package com.example.snmsung.lianxidemo1.Net;import com.example.snmsung.lianxidemo1.Bean.MyBean;import retrofit2.http.Field;import retrofit2.http.FormUrlEncoded;import retrofit2.http.POST;import rx.Observable;/** * Created by SNMSUNG on 2017/11/21. */public interface RequestApi {    public static final String BASE_URL = "http://api.svipmovie.com/";  //  catalogId=402834815584e463015584e539330016&pnum=5    @FormUrlEncoded  @POST("front/columns/getVideoList.do")    Observable<MyBean> getData(@Field("catalogId") String dataid, @Field("pnum") String  pid);}

RetrofitUtlie
package com.example.snmsung.lianxidemo1.Net;import java.util.concurrent.TimeUnit;import okhttp3.OkHttpClient;import retrofit2.Retrofit;import retrofit2.adapter.rxjava.RxJavaCallAdapterFactory;import retrofit2.converter.gson.GsonConverterFactory;/** * Created by SNMSUNG on 2017/11/21. */public class RetrofitUtlie {    public static  RequestApi  doHttpdeal(){        OkHttpClient okHttpClient=new OkHttpClient.Builder()                .connectTimeout(5, TimeUnit.SECONDS)                .readTimeout(5,TimeUnit.SECONDS)                .build();        Retrofit retrofit=new Retrofit.Builder()                .addCallAdapterFactory(RxJavaCallAdapterFactory.create())                .addConverterFactory(GsonConverterFactory.create())                .baseUrl(RequestApi.BASE_URL)                .build();        RequestApi api=retrofit.create(RequestApi.class);        return api;    }}


MainActivity

package com.example.snmsung.lianxidemo1.activity;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.widget.ImageView;import com.example.snmsung.lianxidemo1.Bean.MyBean;import com.example.snmsung.lianxidemo1.Net.RetrofitUtlie;import com.example.snmsung.lianxidemo1.R;import rx.Observer;import rx.android.schedulers.AndroidSchedulers;import rx.schedulers.Schedulers;public class MainActivity extends AppCompatActivity {    private ImageView imageVie;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        imageVie = (ImageView) findViewById(R.id.rec);        qinggqiu();    }    private void qinggqiu() {        RetrofitUtlie.doHttpdeal().getData("402834815584e463015584e539330016","3")                .subscribeOn(Schedulers.io())                .observeOn(AndroidSchedulers.mainThread())                .subscribe(new Observer<MyBean>() {                    @Override                    public void onCompleted() {                    }                    @Override                    public void onError(Throwable e) {                    }                    @Override                    public void onNext(MyBean myBean) {                        String loadURL = myBean.getRet().getList().get(0).getAngleIcon();                    }                });    }}


原创粉丝点击