Android-网络编程-创建HTTP请求

一、所谓的网络编程就是在手机端使用TTP协议和服务器进行网络交互,并对服务器返回的数据进行解析。
二、调用百度网址

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <WebView
        android:id="@+id/web_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        />

</LinearLayout>

前端的代码很简单:就是放置了一个WebView的控件,这个控件的作用就是用来显示浏览器的。

public class MainActivity extends AppCompatActivity {
   

    @Override
    protected void onCreate(Bundle savedInstanceState) {
   
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        WebView webView=(WebView)findViewById(R.id.web_view);
        webView.getSettings().setJavaScriptEnabled(true);
        webView.setWebViewClient(new WebViewClient());
        webView.loadUrl("http://www.baidu.com");
    }

(1)getSettings()中用来设置一些浏览器的属性,这里只是让WebView来支持javaScript脚本
(2)setWebViewClient()传入一个webViewClient实例,意思是当需要打开一个网页转到另一个网页的时候,我们希望目标网页仍在当前的WenView中显示,而不是打系统浏览器
(3)
android:usesCleartextTraffic=“true”
需要加权限
(4)WebView将回调进行分类集合就会出现两个类:WebViewClient和WebChromeClient
WebViewClient:在影响【View】的事件到来时,会通过WebViewClient中的方法回调通知用户(帮WebView处理各种通知,请求事件的)
WebChromeClient:当影响【浏览器】的事件到来时,就会通过WebChromeClient中的方法回调通知用法。
三、HTTP协议的解释
(1)就是客户端像服务器端发出一条HTTP请求,然后服务器端收到请求后会返回一些数据给客户端,然后客户端在对这些数据进行解析和处理
(2)刚才的WebView(客户端)就是像百度浏览器(服务器)发起了一个HTTP请求,然后服务器分析出我们想访问的是百度浏览器,于是把该网页的HTML代码进行返回,然后WebView再调用手机的浏览器内核对返回的HTML代码进行解析,最终将页面展示出来。
(所以WebView相当是封装好了发送HTTP请求,接受服务响应,解析返回的数据,以及最终的展示)
四、一个浏览器的工作原理
(1)客户端发送HTTP请求
(2)服务器接收请求并分析
(3)服务器返回数据
(4)客户端对接受返回的数据
(5)客户端对返回的数据进行分析和解析
(6)展示
其中(1)(4)(5)(6)是我们做的,(2)(3)是服务器端做的
下面我们就来自己介绍怎么发送HTTP请求和解析数据<

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值