00:00
是。把上一次课的。内容给他总结一下,复习一下。上一次课呢,我们主要是讲的是如何跟服务器端进行交互。首先我们要想的来这里面有几个方面,一个一个来看啊,第一个存储的位置。就是。数据是存在哪一边的?是不是远程服务器上面吧,啊远程服务器上。好,下面一个它有哪些特点呢?我们来看啊。首先我们要跟服务器打交道,首先必须保证是不是要联网请求啊。啊,只有你必须联网请求。这个跟前面是不太一样的,前面那几种方式,它是本地的数据存储吧。所以说那个时候联不联网,其实。他不需要吧,嗯,而我们现在是必须联网请求的。
01:01
好,如果一旦是联网请求,就涉及到两个点,第一个点,这个联网请求的工作必须在哪个线程做呀。只能在非线程执行,这是一个,还有一个他是不是要声明一个权限来着。啊。需要啊,声明权限。你只要有这个意思,其实你记不记得住,那那那那个字母那个单词其实并不是关键。好,这是说呢,它的一个基本的一个特点啊。下面实现联网请求的技术。啊,一共有三个,看看哪三个。啊,来把这一个给它整一下,第一个是原生的对吧?啊原生的叫什么来着,Http ul connection。
02:03
用它来去连接发请求啊。好用它的时候呢,还涉及到另外一个类,怎么样得到它的对象呢。URL对象啊。嗯,这个大家也要知道,好下面啊。第二个这原生的答案是必须得会的,第二个呢,倒是其实的是一个包装的叫什么来着,HTTP对吧。这一我们说它相当于是一个什么东西。浏览器对吧。浏览器是不是能够去发请求啊,啊接收响应好啦,那请求有哪些请求啦。它有http get http post啊这是请求。那好啦。那响应叫什么呢?
03:02
Http response,对吧?好。有两个概念,一个叫请求体,一个叫响应体,它也有一个数据封装。叫什么呢?HTTP。En。它这一个类对象既能代表请求体,也能代表什么响应体。当然对于这些因为什么呢,也不是说要大家把所有的都这些东西都记住就对他们呢,有一个呃潜有个感觉看着他,哦,我以前好像见过。我都这么说了,肯定不是骗大家的啊,确实这样,你东西多了,你要记住,那也是不太可能的。好了,下一个就是什么呢?框架。框架呢,现在我们用到一个VO对吧?啊后面呢,大家会用到一个叉。
04:01
的一个框架啊。他们这些框架有一个什么特点呢?大家知道吧,框架用的时候,首先使用上面有什么特点。下我还需要启动分线程吗?你看啊,使用这些框架,它是它叫一个义务网络请求框架。它内部已经实现好那个分线程,我们只需要去发命令,什么意思呢?不需要再自己我们启动分线程。我们只是说要发命令,去发送请求吧,他自己内部。框架内部框架内部。接收到。请求后。
05:00
自动会在哪个线程执行啊,是分线程执行好,那我就问大家在分线程执行执行以后,它是不是得到一个结果呀。他怎么把结果交给你?啊。就是说你想想看嘛,他在内部去执行,你你是不是就给了一个路径给他呀,他就在分线层执行了。那分析执行完了以后,他如何将数据反馈给你?给你结果数据,它通过一种什么方式来给你?什么方式?嗯,不知道是吧,找个人问问啊。呃,你算一算。你说一下。
06:00
你说作为他来说,他他他你看我就给他一个路径是吧,让他去发请求,他在他的内部呢,发了执行的请求,也得到了数据,他如何把数据给你。嗯。不知道是吧。嗯,坐下吧,李少强。你说呀。他通过什么形式来把数据给你,你有什么想法?啊对,很好啊,坐下吧。嗯。他一般会有什么监听器,有什么回调方法?对吧,他会刚才嗯,李少强就说了一个叫切换到。主线程调用监听器的什么回调方法,而监听器是不是我写的呀?是我创建的呀,回调方法也是我写的吧。
07:02
而且大家知道那个回调方法是不是十有八九肯定有参数啊。有没有参数?他要没有参数,他怎么把数据传过来了。对吧。这一个并不仅仅是针对我们的模拟啊,针对任何的框架,它其实都这么做的。你想嘛,他不通过这种方式,他没有别的方式。这其实也是一种思想,这种思想呢,大家需要去掌握。这样的话我们就很简单了,我们只需要去说请求哪一个路径,写一个监听器就够了。啊,不用说什么联网啊,什么启动分线程啊,什么读IO流啊,都不需要了,对不对。看昨天有一个,今天早上有个同学啊,做了一个什么事呢,不是批评的哈,他他。
08:02
他在做的时候,我就觉得他还是自己有想法的。他昨天我们不是有个下载的吗?对吧,有下载最后是不是做了个链接叫下载APP啊。好,下载AK的时候我们用哪种API做的?原生的吧。那我们是不是要将一个输入流读到我的文件流里面去啊。嗯,那个同学就觉得,哎,我原生的我做了,我会了,这个不能满足我的欲望,我得用另外的方式也做一下,就是说什么呢,我想用包装类也做一下。对吧,那包装没做的时候大家想啊。嗯,他也做的差不多了,其实基本都是对的,他做的就是有一步,他有一个小问题。它我们前面用包装类的时候,是不是把那个数据读成一个字符串呢。它是不是工具类,能够很快的把NTT转换为字符串吗?那你说我现在能把这个下载的APK文件转换为字符串吗?
09:03
那肯定不能了吧。对吧,它是二进制数据吧。你不能说把文本数据读成一个二进制,把二进制数据读成一个文文本对不对。能够理解吧。嗯,文件你别把它转成一个字符串了,它毕竟除非它是一个文本文件,你说把内容转换这个字符串,那那还可以转对不对,如果是一个APK文件,如果是一个图片,那是没办法转成字符串的。这个大家需要去知道啊。好,下面一个就是HTTP协议啊,这一部分呢,需要大家到时候。对他们有一个基本的理解就。相关的这些东西,因为在面试的时候或者在笔试的时候容易考到。他就会看一下你到底。啊,让你进了公司做项目,你如果这些东西不太懂,他就感觉你到时候做一些联网的功能,你就做不了。
10:15
再小一点啊。首先大家知道请求的过程,还有一个请求的方式,请求的格式和响应的格式。啊,前面跟大家说过那些呢,好的可以看一下。好,下面还有两个问题,第一个如何来搭建一个。Are,佛系?啊,把服务器端给搭建起来啊,这个地方我给大家写一下,第一个,首先你你得你得按照他们开的吧,啊把他们开的安装安装好。啊,这个。安装并配置他们开的。好。
11:01
这步呢,大家可能是好的,第二个我得在ELIS里面去配置套看。就将他们看关联到什么呢?中,也就是说我们的他不开的啊,譬如说开的现在我已经装上诶这个。启动错了是吧。点上它。我们的是哪个是是。你是吧,走。这个很多同学不太重视。必须得给他做。做一下啊,就什么意思,就是这里面是把它关联上啊。你得观念上摊开了才行。好。来,记得。你关联好开不开了以后,下一步你可以去创建一个动态的什么web工程,对吧,Web project。啊,创建一个动态的外部工程。
12:03
好一。在这个工程里面呢,你可以去啊,大家看啊,我创建了一个外部工程啊,你可以把需要访问的资源呢。什么JSP啊,什么文件资源放到web content下面,别放错位置了。把需要直接访问的资源。放在。外包看的价。对吧,嗯。这个C是不是大写的。外表content。知道吧,这个资源呢,可能是什么呢?有很多种类型,譬如说举个例子啊,啊,什么GSG。什么AK,还有什么image,你们什么图什么图片呢?
13:00
嗯,也可能是图片。好啦。这是一个还有一个啊,跟大家说一下,在这个里面呢。如果有可能需要去创建啊。也有可能,可能需要创建什么呢?我们前面学过的技术学过吧。还有一个。过滤器啊,这个我们后面可以用一下,让他能够去使用一遍。啊,你现在忘了没关系,你先有一个对这个概念倒是存在的吧。好,下面一个就是发布了。运行吧。啊,就运行啊,运行下面一个访问。这个访问得说一下了,访问呢,以前我们周是不是HTTP什么就在写什么local呀,但是我们现在写的不太合适啊。对吧,我们在这个地方后面是不是工程的名字啊,工程的名字后面呢,就是资源的名字啊,资源里面说in等吧。
14:10
好,这个地方啊,这个地方还有一个断号啊,对吧。这里面尽量不要写漏了,我们应该写什么?是不是我们的IP地址啊。啊。IP地址来写一下,嗯,譬如说邀请二。啊,就写IP吧,就写个IP啊。是这个意思吧,嗯,大家通过这个去访问。只有测试通过以后,你再去通过我们的客户端去请求对应的地址。有同学一上来运行就发现,哎,老师这请求怎么没有结果?后来发现,诶,服务器没开启。我的请求路径是错误的。对吧。你先一定要验证一下你的那个路径到底能不能正常的访问。
15:05
可以正常访问了,你再去写你的客户端的实践。一再跟大家强调这样一个事啊,下面一个第六个实现联网请求功能的三步。还记得哪三步啊,第一步。首先知道哪个线程做什么,就是这样一个是第一步主线程。显示什么提示示图,这个提示图有可能为哪些东西呢?跟大家说一下,我们现在用的是prop dialo呀,刚才说还有一种就是progress。这种其实在应用中可能更常见,大家去查看一个网页信息的时候,查看任何一个联网的页面的时候,是不是先是在中间有一个东西在旋转呢?有吧,那下面可能还有一个文本是说正在加载中。
16:02
是吧?这就是一个福SPA。无论是proal还是pro,它是不是都是在提示用户我正在请求中啊?嗯,这个是必然会有的。好,下一步。技能什么?是不分线程干嘛?发送请求对吧。啊,发送请求啊,联网请求吧,联网请求并得到。是不是响应数据啊啊,得到响应数据好,下面第三步好吗。接下来是不是切换到主线程呢,主线程看看。就是说白了就是更新界面对吧。说白了就是你也可以写成什么呢?显示数据。对不对,把新新得的数据是不是要显示出来呀。
17:02
嗯,好。基本上就是这样三步啊。这是一个基本的一个套路,你后面无论是做任何的联网的功能,你就按照这个套路去写。肯定就没错。二。到此为止呢,我们就基本上把所有的数据存储啊,三种方式都跟大家说了一下啊。啊,有。前面呢讲过了一些本地的SP存储啊,文件存储啊,啊数据库存储啊,远程服务器存储。啊,这一次远程服务器存储,我有一个东西没跟大家说啊。有一个功能大家去注册,比如说你注册QQ的时候,是不是有一个功能要上传你的头像啊。有吧?摄像头要做什么事啊?是不是将你本地的图片,本地有一张图片给他。
18:02
发一个请求,是不是上传到服务器上面去啊。这个能理解吧。这一个呢,是在我们后面做应用的时候,跟大家去说如何来去上传文件。是不是也实际上是也是发请求吧,只是这一次发请求跟我们现在发请求有点不太一样。因为我们现在发行是不是最多也就传一个文本呢。而他传的是什么?是不是文件。对不对,这就有点不太一样了啊。难度会稍微大一些啊,我们放到后面去跟大家说。整个就是这么多啊。
我来说两句