chome 安装完就是西班牙语能自学吗,怎么设置回中文或英文?

在用 Express 构建 Web 服务器时,大部分工作都是从请求对象开始,到响应对象终止

协议确定如何传输请求。我们主要是处理 http 和 https。其他常见的协议还有 file 和 ftp。

主机名 主机名标识服务器。运行在本地计算机(localhost)和本地网络的服务器可以简单地表示,比如用一个单词,或一个数字 IP 地址。在 Internet 环境下,主机名通常以一个顶级域名(TLD)结尾,比如 .com 或 .net。另外,也许还会有子域名作为主机名的前缀。请求和响应对象子域名可以是任何形式的,其中 www 最为常见。子域名通常是可选的。

端口 每一台服务器都有一系列端口号。一些端口号比较“特殊”,如 80 和 443 端口。如果省略端口值,那么默认 80 端口负责 HTTP 传输,443 端口负责 HTTPS 传输。如果不使用 80 和 443 端口,就需要一个大于 10231的端口号。通常使用容易记忆的端口号,如3000、8080 或 8088。

路径 URL 中影响应用程序的第一个组成部分通常是路径(在考虑协议、主机名和端口的基础上做决定很合理,但是不够好)。路径是应用中的页面或其他资源的唯一标识。

查询字符串 查询字符串是一种键值对集合,是可选的。它以问号(?)开头,键值对则以与号(&)分隔开。所有的名称和值都必须是 URL 编码的。对此,JavaScript 提供了一个嵌入式的函数 encodeURIComponent 来处理。例如,空格被加号(+)替换。其他特殊字符被数字型字符替换。

信息片段 信息片段(或散列)被严格限制在浏览器中使用,不会传递到服务器。用它控制单页应用或 AJAX 富应用越来越普遍。最初,信息片段只是用来让浏览器展现文档中通过锚点标记(<a id="chapter06">)指定的部分


HTTP 协议确定了客户端与服务器通信的请求方法集合(通常称为 HTTP verbs)。很显然,GET 和 POST 最为常见。在浏览器中键入一个 URL(或点击一个链接),服务器会接收到一个 HTTP GET 请求,其中的重要信息是 URL 路径和查询字符串。至于如何响应,则需要应用程序结合方法、路径和查询字符串来决定。对于一个网站来说,大部分页面都响应 GET 请求。POST 请求通常用来提交信息到服务器后台(例如表单处理)。服务器将请求中包含的所有信息(例如表单)处理完成之后,用以响应的 HTML 通常与相应的 GET 请求是一样的。与服务器通信时,浏览器只使用 GET 和POST 方法(如果没有使用 AJAX)。另一方面,网络服务通常会使用更多的创造性 HTTP 方法。例如,一个 HTTP 方法被命名注 1: 0~1023 端口为“知名端口”。为 DELETE,它就用来接受 API 指令执行删除功能。使用 Node 和 Express,可以完全掌控响应方法(尽管一些更复杂的方法支持得不是很好)。在 Express 中,通常要针对特殊方法编写处理程序。

我们浏览网页时,发送到服务器的并不只是 URL。当你访问一个网站时,浏览器会发送很多“隐形”信息。这里讨论的并不是个人信息泄露问题(浏览器被恶意软件侵染时会出现这个问题)。服务器会因此得知优先响应哪种语言的页面(例如,在西班牙下载 Chrome 浏览器,如果有西班牙语的版本,就会接收到一个西班牙语的访问页面)。它也会发送“用户代理”信息(浏览器、操作系统和硬件设备)和其他一些信息。所有能够确保你了解请求对象头文件属性的信息都将会作为请求报头发送。如果想查看浏览器发送的信息,可以创建一个非常简单的 Express

正如浏览器以请求报头的形式发送隐藏信息到服务器,当服务器响应时,同样会回传一些浏览器没必要渲染和显示的信息,通常是元数据和服务器信息。我们已经熟悉内容类型头信息,它告诉浏览器正在被传输的内容类型(网页、图片、样式表、客户端脚本等)。特别要注意的是,不管 URL 路径是什么,浏览器都根据内容类型报头处理信息。因此你可以通过一个叫作 /image.jpg 的路径提供网页,也可以通过一个叫作 /text.html 的路径提供图片。(这样做并不合情理,这里要讲的重点是路径是抽象的,浏览器只根据内容类型来决定内容该如何渲染。)除了内容类型之外,报头还会指出响应信息是否被压缩,以及使用的是哪种编码。响应报头还可以包含关于浏览器对资源缓存时长的提示。优化网站时需要着重考虑这一点。响应报头还经常会包含一些关于服务器的信息,一般会指出服务器的类型,有时甚至会包含操作系统的详细信息。返回服务器信息存在一个问题,那就是它会给黑客一个可乘之机,从而使站点陷入危险。非常重视安全的服务器经常忽略此信息,甚至提供虚假信息。禁用 打开控制台。(2) 点击网络标签页。(3) 重新载入页面。(4) 在请求列表中选取网页(通常是第一个)。(5) 点击报头标签页,你就可以看到所有响应报头信息了。

内容类型报头信息极其重要,没有它,客户端很难判断如何渲染接收到的内容。内容类型报头就是一种互联网媒体类型,由一个类型、一个子类型以及可选的参数组成。例如,text/html;charset=UTF-8 说明类型是 text,子类型是 html,字符编码是

请求报头外,请求还有一个主体(就像作为实际内容返回的响应主体一样)。一般 GET请求没有主体内容,但 POST 请求是有的。POST 请求体最常见的媒体类型是 application/x-www-form-urlendcoded,是键值对集合的简单编码,用 & 分隔(基本上和查询字符串的格式一样)。如果 POST 请求需要支持文件上传,则媒体类型是 multipart/form-data,它是一种更为复杂的格式。最后是 AJAX 请求,它可以使用 application/json。

“参数”这个词可以有很多种解释,它通常是困惑的源头。对于任何一个请求,参数可以来自查询字符串、会话、请求体或指定的路由参数。在 Node 应用中,请求对象的参数方法会重写所有的参数。因此我们最好不要深究。通常这会带来问题,一个参数在查询字符串中,另一个在 POST 请求体中或会话中,哪个会赢呢?这会产生让人抓狂的 bug。PHP 是产生这种混乱的主要原因:为了尽量“方便”,它将所有参数重新写入了一个称为 $_REQUEST 的变量,由于某种原因,人们曾认为这是个前所未有的好主意。我们将学习保存不同类型参数的专用属性,我认为这能够减少困惑。

请求对象(通常传递到回调方法,这意味着你可以随意命名,通常命名为 req 或 request)的生命周期始于 Node 的一个核心对象 http.IncomingMessage 的实例。Express 添加了一些附加功能。我们来看看请求对象中最有用的属性和方法(除了来自 Node 的 req.headers 请求参数。建议你忽略此方法。req.query一个对象,包含以键值对存放的查询字符串参数(通常称为 GET 请求参数)。req.body一个对象,包含 POST 请求参数。这样命名是因为 POST 请求参数在 REQUEST 正文中传递,而不像查询字符串在 URL 中传递。要使 req.body 可用,需要中间件能够解析请求正文内容类型req.route关于当前匹配路由的信息。主要用于路由调试。req.cookies/req.singnedCookies?一个对象,包含从客户端传递过来的 cookies 值。从客户端接收到的请求报头。req.accepts([types])一个简便的方法,用来确定客户端是否接受一个或一组指定的类型(可选类型可以是单个的 MIME 类型,如 application/json、一个逗号分隔集合或是一个数组)。写公共API 的人对该方法很感兴趣。假定浏览器默认始终接受 HTML。req.ip客户端的 IP 地址。req.path请求路径(不包含协议、主机、端口或查询字符串)。req.host一个简便的方法,用来返回客户端所报告的主机名。这些信息可以伪造,所以不应该用于安全目的。请求和响应对象 req.xhr一个简便属性,如果请求由

一个简便属性,如果连接是安全的,将返回 true。等同于 req.protocol==='https'。req.url/req.originalUrl有点用词不当,这些属性返回了路径和查询字符串(它们不包含协议、主机或端口)。req.url 若是出于内部路由目的,则可以重写,但是 req.orginalUrl 旨在保留原始请求和查询字符串。req.acceptedLanguages一个简便方法,用来返回客户端首选的一组(人类的)语言。这些信息是从请求报头中解析而来的。

响应对象(通常传递到回调方法,这意味着你可以随意命名它,通常命名为 res、resp 或response)的生命周期始于 Node 核心对象 http.ServerResponse 的实例。Express 添加了一些附加功能。我们来看看响应对象中最有用的属性和方法(所有这些方法都是由 Express添加的)。res.status(code)设置 HTTP 状态代码。Express 默认为 200(成功),所以你可以使用这个方法返回状态404(页面不存在)或 500(服务器内部错误),或任何一个其他的状态码。对于重定向(状态码 值。需要中间件支持res.redirect([status],url)重定向浏览器。默认重定向代码是 302(建立)。通常,你应尽量减少重定向,除非永久移动一个页面,这种情况应当使用代码 及可选的状态码。res.type(type)一个简便的方法,用于设置 Content-Type 头信息。基本上相当于 设为text/plain。此功能在有些领域可能会有用(例如自动提供不同的多媒体文件),但是通常应该避免使用它,以便明确设置正确的互联网媒体类型。res.format(object)这个方法允许你根据接收请求报头发送不同的内容。这是它在 只是设置报头。另外,你还要将内容发送到客户端。res.sendFile(path,[option],[callback])这个方法可根据路径读取指定文件并将内容发送到客户端。使用该方法很方便。使用静态中间件,并将发送到客户端的文件放在公共目录下,这很容易。然而,如果你想根据条件在相同的 中会被重写,但在没有被重写的情况下仍然可用)。res.render 的默认响应代码为 200,使用 res.status 可以指定一个不同的代码。

第一次遇到这么奇怪的事情。

ghost 恢复 windows 7后,下载了chrome的安装文件,文件大小一兆,点击安装,出来的文字是西班牙语的,安装后chrome也成了西班牙语界面了。

我又重新下载了完整的离线安装版本。安装时,提示文字是中文,但安装完成后,又成西班牙语界面了。

windows 7 中文专业版。是否使用代理,结果都是一样。把区域设成中国和美国,结果都是一样的。我看网上有人说可以设置成中文界面。但我想知道,为什么会变成西班牙语界面?

第一次遇到这么奇怪的事情。

ghost 恢复 windows 7后,下载了chrome的安装文件,文件大小一兆,点击安装,出来的文字是西班牙语的,安装后chrome也成了西班牙语界面了。

我又重新下载了完整的离线安装版本。安装时,提示文字是中文,但安装完成后,又成西班牙语界面了。

windows 7 中文专业版。是否使用代理,结果都是一样。把区域设成中国和美国,结果都是一样的。我看网上有人说可以设置成中文界面。但我想知道,为什么会变成西班牙语界面?

我要回帖

更多关于 西班牙语能自学吗 的文章

 

随机推荐