发布网友
共3个回答
懂视网
1)目的:
?在jsp中动态生成css语句,然后输出给浏览器解析、渲染。
2)浏览器解析文件的依据:
?页面加载后,浏览器会发起各个请求去下载各种资源。
?比如下载css文件,然后根据css的解析规则去解析文档。而如果下载的文件Content-Type不符合,则浏览器会自动屏蔽掉。
?
?知道浏览器的解析规则后,jsp需要做的就是把自己的Content-Type伪装成"text/css"。
index.html
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"/> <title>jsp文件输出为css文件</title> <link type="text/css" rel="stylesheet" href="./css.jsp" /> </head> <body> <p class="demo">wall say: hello!</p> </body> </html>
css.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" session="false"%> <% // 伪装响应的http头部 response.setHeader("Content-Type", "text/css"); //输出css样式 out.clear(); out.print("@charset "utf-8"; "); out.print("p{color:red;} "); %>
?
成功将jsp伪装成css文件,浏览器解析样式成功!
?根据这种伪装规则,可以将jsp伪装成任意的文件格式,只要浏览器能够解析。
比如伪装成js,则将Content-Type设置为“application/x-javascript”
更多Content-Type伪装 - 将jsp伪装成css 相关文章请关注PHP中文网!
热心网友
解析语言的作用。
获知请求中的消息主体是用何种方式编码,再对主体进行解析。
Content-Type 被指定为 application/x-www-form-urlencoded;其次,提交的数据按照 key1=val1&key2=val2 的方式进行编码,key 和 val 都进行了 URL 转码。大部分服务端语言都对这种方式有很好的支持。例如 PHP 中,$_POST[‘title’] 可以获取到 title 的值,$_POST[‘sub’] 可以得到 sub 数组。
JSP:
JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
它实现了Html语法中的java扩展(以 <%, %>形式)。JSP与Servlet一样,是在服务器端执行的。通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。
热心网友
contentType
content叫做内容Type 叫类型
他影响客户的浏览方式
您另存为什么都行,因为他影响的客户端数据
编码是不会改变的,因为您还有一个叫做pageEncoding
他是程序的编码。
您明白了吗pageEncoding程序编码contentType 显示编码