美文网首页
网络技术

网络技术

作者: 爱做梦的严重精神病患者 | 来源:发表于2018-10-19 22:43 被阅读0次

    1.WebView

     借助WebView我们可以自己的控件里嵌入一个浏览器

    //调用setJavaScriptEnabled()方法来让WebView支持JavaScript脚本。
    webView.getSettings().setJavaScriptEnabled(true);
    //跳转网页时,仍使用WebView
    webView.setWebViewClient(new WebViewClient());
    //传入网址
    webView.loadUrl("http://www.baidu.com");
    

    2.HttpURLConnection

     首先要获取HttpURLConnection的实例,需要一个URL对象,然后调用openConnection()方法即可。

    URL url = new URL("http://www.baidu.com");
    HttpURLConnection connection = (HttpURLConnection)url.openConnection();
    

     接下来设置HTTP请求所使用的方法GETPOST。之后设置一些例如连接超时、读取超时的毫秒数以及服务器希望得到的一些消息头等。

    //GET方法
    connection.setRequestMethod("GET");
    connection.setConnectTimeout(8000);
    connection.setReadTimeout(8000);
    
    //POST方法
    connection.setRequestMethod("POST");
    //获取输出流
    DataOutputStream out = new DataOutputStream(connection.getOutputStream());
    //写入提交POST数据
    out.writeBytes("username=admin&password=123456");
    

     之后再调用getInputStream()方法,获得服务器返回的输入流,对输入流进行读取。最后,关闭HTTP连接

    InputStream in = connection.getInputStream();
    connection.disconnect();
    

    3.OkHttp

     在使用OkHttp之前,需要先在项目中添加依赖。之后来看一下OkHttp的具体用法。首先创建一个OkHttp的具体实例
     接下来如果想要发起一条HTTP请求(GET),就需要创建一个Request对象。如果发起一条POST请求需要先构建出一个RequestBody对象存放提交的参数,然后在Request.Builder中调用post()方法,并传入RequestBody对象。

    OkHttpClient client = new OkHttpClient();
    Request request = new Request.Builder()
                            .url("http://www.baidu.com")    
                            .build();
    
    RequestBody requestBody = new FormBody.Builder()
                                .add("username", "admin")
                                .add("password", "123456")
                                .build();
    Request request = new Request.Builder()
                            .url("http://www.baidu.com")
                            .post(requestBody)    
                            .build();
    

     之后调用OkHttpClient的newCall()方法来创建一个Call对象,并调用它的execute()方法来发送请求,并获取服务器返回的数据。其中Response对象就是服务器返回的对象

    Response response = client.newCall(request).execute();
    String responseData = response.body().string(); 
    

    相关文章

      网友评论

          本文标题:网络技术

          本文链接:https://www.haomeiwen.com/subject/yhguzftx.html