servlet-ajax

合集下载

Ajax基础教程

Ajax基础教程

简介本文介绍一种方法,Ajax(Asynchronous JavaScript andXML,提出:Jesse James Garrett),使用它可以构建更为动态和响应更灵敏的Web应用程序。

Ajax是2005年2月才正式提出的一项综合技术,其主要特点是为Web开发提供异步的数据传输和交换方式,可以在不重载(Reload)刷新(Refresh)界面的情况下与服务器进行数据交换。

该方法的关键在于对浏览器端的JavaScript、DHTML和与服务器异步通信的组合。

如果使用得当,这种强大的力量可以使应用程序更加自然和响应灵敏(无刷新更新局部页面),从而提升用户的浏览体验。

术语Ajax用来描述一组技术,它使浏览器可以为用户提供更为自然的浏览体验。

在Ajax之前,Web站点强制用户进入提交/等待/重新显示范例,用户的动作总是与服务器的“思考时间”同步。

Ajax提供与服务器异步通信的能力,从而使用户从请求/响应的循环中解脱出来。

借助于Ajax,可以在用户单击按钮时,使用JavaScript和DHTML(是利用CSS(层叠样式表),JavaScript,HTML等技术而建立的能与访问者产生互动的网页)立即更新UI,并向服务器发出异步请求,以执行更新或查询数据库。

当请求返回时,就可以使用JavaScript和CSS来相应地更新UI,而不是刷新整个页面。

最重要的是,用户甚至不知道浏览器正在与服务器通信:Web站点看起来是即时响应的虽然Ajax所需的基础架构已经出现了一段时间,但直到最近异步请求的真正威力才得到利用。

能够拥有一个响应极其灵敏的Web站点确实激动人心,因为它最终允许开发人员和设计人员使用标准的HTML/CSS/JavaScript堆栈创建“桌面风格的(desktop-like)”可用性。

Google Suggest、Google Maps所有这些Web站点都告诉我们,Web应用程序不必完全依赖于从服务器重新载入页面来向用户呈现更改。

集成Servlet和Ajax构建敏捷的Java Web应用

集成Servlet和Ajax构建敏捷的Java Web应用

x rq = n w Acie be t ml e e t XO jc v f”M rsf i o ot c ,XM—
LTP ) H T ”
而对 Fr o ,a r和 O ea 则 为 : i f Sfi ex a p r,
x l q = n w X t R q et ) mr e e ML t e u s ; H p (
w b服 务 器进行 异 步 数 据 交 互 , w b应 用 带 来 了前 所 未 有 的 即 时性 和 交 互 性 . 服 务 器 端 的 e 给 e 将 Srlt ev 和客 户端 的 A a e jx集成起 来 , 以综 合 利 用 两者各 自的优 势 , 可 显著提 高 Jv e aaw b应 用 的敏捷 性 , 带给 用户更 为动 态 、 速 的 w b交互体验 . 并 快 e

要 : 细探 讨 了在 Jv e 详 aaw b应 用 中集 成 srl 和 A a eve t jx的可行 性 及 其 策略. ev t 服务 器端 Srl 是 e
Jv e aaw b技 术 的基础 。 是 Jv E平 台的 一个核 心 组件 , 也 aaE 它通过 HIP请 求/ 答模 式 来构 建 可扩 , ' T 应 展 的 w b应 用 : jx则是客 户端 w b应 用 开发 的一 种全 新 的 设计模 式 , e Aa e 它采 用 JvS r t 本 来与 aaci 脚 p
Srlt ev 组件 . e 与普 通 的 U L请 求 不 同 , jx请 求 在 R Aa
发送 前 必 须 对 x H tR q et 象 进 行 相 应 的属 ML t e u s 对 p
性 设 置 和方法 调用 , 以使 该 x H tR q et 象处 ML t e u s 对 p 于 正确 的就绪 状态 , 这是 A a 与 S rlt jx ev 集成 时非 常 e

基于AJAX和Servlet的Web GIS的研究与实现

基于AJAX和Servlet的Web GIS的研究与实现
CNGImo i eOlm pc i m. t y i t v e
Ke o d : eg a hc lno ainsse yw r s g o r i fr t y t p ai m o m;We S A A bGI ; J X:S r l ;I S eve T t
0 引 言
LU n — i , a - i, , U a g al Do g x n , LIDin we 一 LI Ch n . l 一 2
( .h nxn ot r T cn l yC . t. i aoaoy N r hn 1Z o g igS f e eh o g o Ld Unt L brtr, ot C i wa o e h a
temu u l p rt no S,i h rd c ft eW e n i S.Fi t h ta e ai fGI o o step o u to h ba dt eGI l rl s y,t ep icpea d  ̄v rlmpe n a tc n lge r i— h rn il n ea i lme tl eh oo isaeds
ElcrcPo r Unv r i , e g u 6 0 4 Chn ; e t we i est Ch n d 1 0 1, i a i y
2 Sho o C m ue i c .col f o p tr e e& Teh o g , ot hn l tcP we U ie i , e i 0 2 6 C i ) c S n cn l y N rhC iaEe r o r nvr t B in 12 0 , h a o c i sy jg n
维普资讯
第 1 7卷
第 3期
计 算 机 技 术 与 发 展
C OM Pt l T’ TE( t ER 、 NOI Xi AND } . Y ( DEVEIOPM EN'、 , I

说明 servlet 的三种访问方式

说明 servlet 的三种访问方式

说明 servlet 的三种访问方式Servlet是Java语言编写的服务器端组件,用于处理客户端的请求并生成响应。

Servlet的访问方式有三种:通过URL直接访问、通过表单提交数据访问和通过AJAX异步请求访问。

一、通过URL直接访问通过URL直接访问Servlet是最常见的方式之一。

在浏览器地址栏中输入Servlet的URL,就可以直接访问该Servlet。

URL的格式通常为:http://服务器地址:端口号/项目名/Servlet路径。

例如,假设服务器地址是localhost,端口号是8080,项目名是myapp,Servlet的路径是myservlet,则访问该Servlet的URL为:http://localhost:8080/myapp/myservlet。

通过URL直接访问Servlet时,可以通过URL参数传递数据给Servlet。

例如,可以在URL中添加参数name=张三,让Servlet根据该参数生成相应的响应。

URL参数的格式为:?参数名1=参数值1&参数名2=参数值2&...。

例如,访问Servlet的URL为:http://localhost:8080/myapp/myservlet?name=张三。

二、通过表单提交数据访问通过表单提交数据访问Servlet是常用的方式之一。

在HTML页面中,可以使用<form>标签创建一个表单,设置表单的action属性为Servlet的URL,设置表单的method属性为POST或GET,然后在表单中添加各种输入元素,用户填写完表单后点击提交按钮,表单数据会被发送到Servlet进行处理。

在Servlet中,可以通过HttpServletRequest对象的getParameter方法获取表单提交的数据。

例如,假设表单中有一个输入框的name属性为name,用户填写了姓名为张三,那么在Servlet中可以通过getParameter("name")方法获取到该值。

利用AJAX实现用户注册时用户名是否重名的实时校验

利用AJAX实现用户注册时用户名是否重名的实时校验

目录1.1利用AJAX实现“实时校验” (2)1.1.1构建出验证用户注册时的用户名称是否重名的Web应用项目 (2)1.1.2编程相关的JS程序 (5)1.1.3添加后台Java相关的程序 (11)1.1.4测试项目的最终应用效果 (15)1.1.5改进前面的Web应用以实际访问数据库表来获得验证的目标 (16)1.1.6采用面向对象的方式进行JavaScript编程 (25)1.1利用AJAX实现“实时校验”1.1.1构建出验证用户注册时的用户名称是否重名的Web应用项目1、验证用户注册时的用户名称是否重名的应用(1)常规的实现方法在某个用户注册的应用中,当用户注册时检查用户名是否可用,以前的做法是在旁边加一个按钮,点击“检查”,就向服务器发出请求,然后等待……服务器返回信息,继续操作。

(2)利用Ajax技术来实现以上的操作则不必等待服务器返回信息用户输入用户名或企业名称的时候,当输入文本框失去焦点(用户的名称输入完毕)的时候,则会自动向服务器发出请求,用户继续做下面的操作,不必点击“检查”,也不必等待服务器返回信息,检查与用户操作是异步的,可同时进行。

当服务器信息返回的时候,会自动在面页相应位置显示返回信息,不必刷新页面,相当于局部刷新的效果。

2、在Web应用中添加一个包含有注册表单的JSP页面(1)新建一个userManage目录(2)在该目录中添加一个页面,文件名称为userRegisterByAJAX.jsp(2)编辑该JSP以添加一个实现注册的表单,并对用户在注册表单中所输入的用户的名称进行实时检查但要注意在JSP页面中如果采用<%@page pageEncoding="UTF-8%>,则在JavaScript 代码中会出现解释方面的错误,为什么?另外,为了简化页面,对页面中的表单进行了简化。

<%@page pageEncoding="gb2312"%><%@taglib prefix="c"uri="/jsp/jstl/core"%><!DOCTYPE html PUBLIC"-//W3C//DTD XHTML 1.0Transitional//EN" "/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="/1999/xhtml"><head><title>蓝梦集团CRM系统的用户注册页面</title><link href="<c:url value='/css/pageContentStyle.css'/>"rel="stylesheet"type="text/css"/> <script language="javascript"src="<c:url value='/javascript/commonJavaScript.js'/>"type="text/javascript"></script><script language="javascript"type="text/javascript">function checkUserNameValide(userNamebyInputed){}</script></head><body><jsp:include page="/commonPage/pageHead.jsp"></jsp:include><jsp:include page="/commonPage/navMenuBar.jsp"></jsp:include><div id="someOnePageContent"><form action="${pageContext.request.contextPath}/userRegisterAJAXAction.action" method="post"name="registerForm">用户名称:<input type="text"name="userName" onblur="checkUserNameValide(this.value)"style="background:#FFFFFF"/> <div id="showErrorInfoDivID"style="background-color:#FF9900;display:none"> </div><br/>用户密码:<input type="password"name="userPassWord"/><br/> <input type="submit"value="提交"name="submitButton" id="submitButtonID"disabled/></form></div><jsp:include page="/commonPage/authorInfo.jsp"></jsp:include></body></html>3、测试当前的效果http://127.0.0.1:8080/webcrm/userManage/userRegisterByAJAX.jsp识别事件是否正常地触发。

servlet的工作流程 -回复

servlet的工作流程 -回复

servlet的工作流程-回复Servlet的工作流程Servlet是一种服务器端的Java程序,其主要功能是处理客户端发送的请求并提供响应。

下面将详细介绍Servlet的工作流程,一步一步回答中括号内的主题。

一、客户端发送请求在Servlet的工作流程中,首先客户端会发送一个请求到服务器。

这个请求可以是通过浏览器上的URL、表单提交或者Ajax请求等方式发起的。

无论请求的方式如何,Servlet都需要通过请求对象来获取请求的信息。

二、Servlet容器接收请求一旦Servlet容器(如Tomcat、Jetty等)接收到请求,它会根据部署在自己上面的web应用程序的配置决定将请求交给哪个Servlet来处理。

Servlet容器会根据请求的URL路径或者部署描述符中的配置将请求路由到相应的Servlet上。

三、Servlet实例化和初始化在Servlet容器确定请求需要交给哪个Servlet进行处理后,它会检查是否已经对该Servlet进行了实例化。

如果没有实例化过,即该Servlet尚未被创建,Servlet容器会通过调用Servlet的构造方法来创建一个Servlet实例。

在Servlet实例化后,Servlet容器会调用Servlet的init()方法,对Servlet 进行初始化。

在init()方法中,开发人员可以进行一些初始化的工作,例如建立数据库连接、加载配置文件等。

同时,Servlet容器会把一个包含了请求信息和响应信息的HttpServletRequest和HttpServletResponse对象传递给Servlet实例,以便Servlet实例能够获取和处理相关的请求和响应。

四、处理请求在Servlet的service()方法中,具体的请求处理逻辑将被实现。

开发人员需要重写service()方法,并在其中编写处理客户端请求的代码。

在service()方法中,开发人员可以通过HttpServletRequest对象获取请求参数、处理表单提交数据、进行业务逻辑处理等操作。

java后端主动向前端传递数据的方法

java后端主动向前端传递数据的方法

java后端主动向前端传递数据的方法
Java后端主动向前端传递数据的方法是通过使用HTTP协议进行数据交互。

以下是几种常用的方法:
1. 使用Servlet:Java后端可以编写Servlet来处理前端请求,并在响应中添加所需的数据。

通过使用ServletResponse对象的方法(如getOutputStream())将数据以字符串或JSON格式发送给前端。

2. 使用JSP:Java后端可以使用JSP页面来动态生成HTML,并在其中嵌入后端数据。

后端可以通过使用JSP标签库或Java代码将数据传递给前端。

3. 使用WebSocket:WebSocket是一种全双工通信协议,可以实现实时的、双向的数据传输。

Java后端可以使用WebSocket技术建立连接,并主动向前端推送数据,前端可以通过Websocket API接收数据。

4. 使用消息队列:后端可以使用消息队列系统(如ActiveMQ或RabbitMQ)将数据发送到前端。

前端可以订阅特定的队列或主题,接收后端发送的数据。

5. 使用Ajax:Ajax是一种在不重新加载整个页面的情况下与服务器进行数据交互的技术。

Java后端可以提供RESTful API,前端通过Ajax请求后端接口,并将返回的数据展示在页面上。

这些方法可以根据具体需求选择使用,根据业务场景的不同,可灵活选择适合的方式来实现后端向前端传递数据。

ajax技术原理

ajax技术原理

ajax技术原理Ajax是一种用于创建交互式Web应用程序的技术,它可以让Web页面可以在不刷新整个页面的情况下向服务器发送请求并获取数据,然后在页面中动态地显示它们。

Ajax技术是基于多种技术的复杂集成,它涉及到浏览器端JavaScript、DOM、XMLHttpRequest对象、服务器端脚本等多个方面。

本文将针对Ajax技术的原理、工作流程、技术架构等方面进行详细的介绍。

一、Ajax技术的原理Ajax全称为Asynchronous JavaScript and XML,它最初是由Jesse James Garrett提出的一种Web开发技术,Ajax技术的核心思想是使用JavaScript和XMLHttpRequest对象来与服务器异步通信,从而实现页面的更新,而不需要刷新整个页面。

在使用Ajax技术前,Web应用程序需要刷新整个页面,同时每次页面刷新会向服务器发送一次请求,导致页面响应延迟,影响用户体验。

而使用Ajax技术后,浏览器可以只更新部分页面,不需要刷新整个页面,同时可以多次向服务器请求数据。

Ajax技术的原理是基于JavaScript语言,通过JavaScript语法实现浏览器与服务器之间的异步通信。

在Web页面中,我们可以通过JavaScript创建一个XMLHttpRequest对象,然后使用该对象向服务器发送请求并获取数据。

发送的请求类型可以是各种不同的请求类型,比如GET、POST、PUT、DELETE等。

服务器接收到请求后,会对请求进行处理,并将响应数据返回给浏览器。

浏览器接收到响应数据后,就可以将其显示到页面中,完成页面的更新,而不需要刷新整个页面。

二、Ajax技术的工作流程Ajax技术的工作流程是由浏览器端和服务器端两部分组成。

浏览器端负责通过JavaScript创建XMLHttpRequest 对象,然后向服务器发送HTTP请求。

在服务器端,接收到HTTP请求后,服务器会根据请求类型进行相应的处理,然后将处理结果返回给浏览器。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

SERVLET(servlet)1、软件的三种架构(了解)(1)主机、终端a,特点:主机负责处理所有的业务逻辑,终端只提供操作界面。

b,优点:可靠、I/O处理能力强。

c,缺点:过于昂贵,而且维护困难。

(2)client/server1)二层的c/sa,特点:一般将大部分业务逻辑使用特定的数据库语言来进行编写,客户端负责提供界面以及处理少量的业务逻辑。

b,缺点:如果数据库发生改变(比如,从sqlserver换成oracle),需要重写业务逻辑。

还有,需要客户端跟数据库之间保持一个数据库连接,所以,不适合大型的应用。

2)三层的c/sa,特点:数据库只负责管理数据,所有的业务逻辑写在应用服务器上面(一般使用java语言),客户端只负责提供操作界面。

b,优点:维护性好(换数据库,不用重写业务逻辑,换应用服务器所在的操作系统或者硬件平台,也不影响)c,缺点:客户端需要单独安装和调试,另外,开发复杂(需要自定义协议和通讯处理模块)。

3)browser/servera,特点:客户端使用标准的浏览器(不需要去开发了,浏览器里面包含了一个通讯处理模块,使用标准的通讯协议http与服务器进行通讯),服务器使用标准的web服务器(不需要开发了,里面也包含了一个通讯模块)。

b,优点:客户端不用再去安装了,不需要自定协议和开发相应的通讯模块了。

2、什么是servlet?sun公司制订的一种用来扩展web服务器功能的组件规范。

1) 扩展web服务器功能:早期的web服务器(apache提供的webserver,微软的iis)只能够处理静态资源的请求(即需要事先将html文件写好),不能够处理动态资源的请求(即需要计算,然后生成相应的页面)。

所以需要扩展web服务器的功能。

可以使用cgi程序来扩展。

cgi程序可以使用perl,c等语言来开发,但是,cgi程序开发复杂,还有可移植性差,并且,一个请求会启动一个进程,系统开销会非常大。

servlet也可以扩展web服务器功能。

servlet需要依据servlet容器才能运行,容器负责为servlet提供一些基础服务(比如,容器在收到请求之后,会对请求数据包进行解析,将数据提取出来,交给servlet来处理,这样,在编写servlet时,就不用考虑http协议相关的问题,也不用考虑网络相关的问题)。

2) 组件规范a,所谓组件,其实就是一个符合一定规范,实现部分功能,并且可以部署在相应的容器上运行的软件模块。

b,组件跟容器的关系:容器也是一个程序,要符合相应的规范,并且提供组件的运行环境,提供相应的基础服务。

3、如何写一个servlet?step1, 写一个java类,实现Servlet接口或者继承HttpServlet抽象类。

step2, 编译。

step3, 打包。

即创建一个具有如下结构的文件夹:appnameWEB-INFclasses(.class文件)lib(可选,放.jar文件)web.xml(部署描述文件)step4, 部署。

将step3创建的文件夹拷贝到servlet容器特定的文件夹下面(比如,tomcat 对应的是webapps文件夹)。

或者,也可以将step3生成的文件夹压缩(使用jar命令压缩成.war文件),然后再拷贝。

step5,启动servlet容器,访问http://ip:port/appname/servlet-url4、tomcat的安装与简单的使用tomcat是一个servlet容器,使用java语言开发出来的。

tomcat不仅仅是一个容器,也可以充当一个web服务器来使用。

1)安装step1,将/opt下面的压缩文件解压到/home/soft01Step2,配置环境变量(可以先不做)cd /home/soft01vi .bash_profile添加:JA V A_HOME:jdk的安装路径CATALINA_HOME:tomcat安装路径PATH:tomcat安装路径/binstep3,启动tomcatcd /home/soft01/apache-tomcat/binsh startup.sh (或者sh catalina.sh run)step4, 在浏览器地址栏输入http://localhost:80802)简单使用a,启动容器cd /home/soft01/apache-tomcat5.5/binsh startup.sh( linux)startup.bat(windows)b,关闭容器cd /home/soft01/apache-tomcat5.5/binsh shutdown.sh (linux)shutdown.bat(windows)c, tomcat安装之后,几个主要的文件夹的作用:bin: 可执行文件,比如启动和关闭容器。

common: 可以被所有的程序共享的一些文件。

conf:服务器的配置文件。

5、第一个servlet: HelloServlet6、使用myeclipse来开发一个简单的servletstep1,先启动myeclipse,让myeclipse来管理tomcatstep2,创建一个web工程7、servlet是如何运行的?http://localhost:8080/web01/greeting?name=zsstep1,浏览器依据ip,port 跟服务器建立连接(服务器,比如tomcat)。

step2,浏览器打包(将请求数据按照http协议的要求创建一个数据包),并且将请求数据包发送给服务器。

step3,服务器拆包,将解析之后得到的数据封装到request对象上。

同时,服务器还会创建一个response对象。

step4,服务器依据请求资源路径(/web01/greeting)找到对应的servlet的配置,并且创建这个servlet对象。

接下来,调用该对象的service方法(服务器会将事先创建好的request,response对象作为参数传递进来)。

step5,在servlet的service方法里面,可以通过request对象获得请求参数,也可以在处理请求之后,将处理结果写到response对象上面。

step6, 服务器读取response对象上的数据,然后打包,发送给浏览器。

step7, 浏览器会拆包,生成相应的界面。

8、常见错误的处理1)404404是一个状态码(由w3c定义,是一个三位数字,表示不同的含义,服务器通过状态码向客户端传递是否正常地处理了客户端的请求)。

404: 服务器依据请求资源路径,找不到对应的资源。

错误原因:请求资源路径写错。

解决方式:按照http://ip:port/appname/servlet-url检查你的请求地址。

2)500500: 服务器处理出错错误原因:程序在运行过程当中发生了不正常。

解决方式:检查程序代码和相应的配置文件(web.xml)。

3)405405: 找不到对应的方法来处理请求解决方式:仔细检查service方法的签名。

练习:http://localhost:8080/web01_lab/date会显示出当前系统日期(比如2013-05-081、http协议(了解)(1)什么是http协议?由w3c制订的一种应用层协议,定义了浏览器(或者是其它客户端)与web服务器之间通讯的过程与数据的格式。

(2)通讯的过程:step1,浏览器建立与web服务器之间的连接step2,浏览器将请求数据打包,然后发送请求给web服务器。

step3,服务器将处理结果打包,发送响应给浏览器。

step4,服务器立即关闭连接。

如果浏览器要再发请求,必须重新建立新的连接。

特点:一次请求,一次连接。

优点:web服务器可以利用有限的连接为尽可能多的客户端服务。

(3)数据包的结果1)请求数据包a,请求行: 请求方式(get/post) 请求资源路径(web01/greeting) 协议类型和版本.(Http/1.1)b,消息头(若干):消息头是一些键值对,一般由浏览器或者服务器自动生成,表示一些特定的含义,比如,浏览器可以向服务器传递user-agent消息头,告诉服务器浏览器的类型和版本。

c,实体内容只有当发送post请求时,才会将请求参数放在实体内容里面,如果是get请求,请求参数会放在请求行。

2)响应数据包a,状态行:协议的类型和版本(Http/1.1) 状态码(200) 状态描述(OK)状态码是一个三位数字,常见的有:404:依据请求资源路径,找不到对应的资源。

500:系统出错。

200:正常。

b,消息头(若干):比如,服务器可以发送一个content-type消息头,告诉浏览器,返回的数据类型及编码。

(默认的编码格式是iso-8859-1) c,实体内容:放的是程序处理的结果。

2、get方式与post方式(1)哪一些是get方式a,在浏览器地址栏输入某个地址。

b,点击链接c, 表单默认提交(2)哪一些是post方式设置表单的method="post"时。

(3)get方式的特点a, get方式会将请求参数添加到请求行(请求资源路径的后面),只能提交少量的数据给服务器。

b, get方式会将请求参数显示在浏览器地址栏,不安全。

(4)post方式的特点a, post方式会将请求参数添加到实体内容里面,可以提交大量的数据给服务器。

b, post方式不会将请求参数显示在浏览器地址栏,相对安全。

3、编码知识1)java语言在内存当中,保存的任何的字符都是使用unicode编码格式。

2)什么是编码?将unicode编码格式对应的字节数组转换成某种本地编码格式(gbk,utf-8)对应的字节数组。

3)什么是解码?将本地编码格式对应的字节数组转换成unicode编码格式对应的字节数组。

4、表单的处理1)如何获得请求参数值方法一:String request.getParameter(String paraName);注意:如果参数名称不正确,会获得null。

方法二:String[] request.getParameterValues(String paraName);注意:如果有多个请求参数的名称相同。

?city=bj&city=wh&city=cs2)如何处理中文参数值当表单提交时,浏览器会对表单中的中文参数值进行编码(使用哪种编码格式,要看打开表单所有的页面的编码格式)。

服务器在默认情况下,会使用iso-8859-1去解码。

这样,就出现了乱码问题。

解决方式:方式一:step1,确保表单所在的页面,按照指定的编码格式打开。

在html文件当中,添加:<meta http-equiv="content-type" content="text/html;charset=utf-8">step2,在服务器端,告诉服务器按照指定的编码格式去解码。

相关文档
最新文档