• HTML文件直接在浏览器打开和本地服务器localhost打开有什么区别?


    最直接的区别,很容易注意到,一个是file协议,另一个是http协议

    file协议更多的是将该请求视为一个本地资源访问请求,和你使用资源管理器打开是一样的,是纯粹的请求本地文件。

    http请求方式则是通过假架设一个web服务器,解析http协议的请求然后向浏览器返回资源信息。我们所开发的html文件最后必定是会以网页的形式部署在服务器上,通过http协议访问,所以我们开发中也尽可能模拟线上环境,架设本地服务器,来避免file协议与http协议实现过程中的某些差异,如某些API的差异、跨域请求的差异等。举个最容易验证的例子:在页面引入一张绝对路径的图片,即’/image/example.png’,然后分别通过这两种方式打开页面,file协议会将资源请求到根路径,而http协议虽然也会请求到根路径,但是是相对本地架设的服务器的根路径,一般也就是项目文件夹的路径。

    访问服务器上的html文件是以http的协议方式去打开,有网络交互。

    直接打开html文件是以file协议的方式去打开,没有网络交互。

    浏览器对两种协议的处理有时会不同,譬如某些网页中直接调用file协议来打开图片,这样的功能会被浏览器的安全设置阻挡。因为默认上,html是运行于客户端的超文本语言,从安全性上来讲,服务端不能对客户端进行本地操作。即使有一些象cookie这类的本地操作,也是需要进行安全级别设置的。

    启动http服务

    这里举例Python3,Python自带一个微型的http服务,可以通过命令行启动:

    python3 -m http.server 
    

    然后这个服务启动后,在浏览器输入localhost:8000即可。显示的内容是基于你启动服务时所在的路径下的文件。
    比如,你在/home/linux/ubuntu这个路径下执行的命令,那么网页显示的就是ubuntu下的文件。

  • 相关阅读:
    软件测试初探
    weiPHPOneThink1.0开发手册
    关于.aspx与.aspx.cs的关系
    佩服的牛人
    当客户说“没钱”,我该怎么应对?
    weiphp 简介笔记
    FlashFXP、LeapFTP、CuteFTP 等FTP软件二进制上传或下载方法
    集体智慧编程(一)
    Sargur Srihari 的两个课程 ML和DM
    一个神人Hoifung Poon
  • 原文地址:https://www.cnblogs.com/cpl9412290130/p/11607495.html
Copyright © 2020-2023  润新知