ajax开发中在请求server端的响应时, 对于每一种返回类型 规范的做法是要在服务端指定response的contentType 的. (当然 不指定绝大多数情况下也没什么问题 尤其是返回"非xml"的时候) 。

常遇到以下的几种情况:

1、 服务端须要返回一段普通文本给client,Content-Type="text/plain"

2 、服务端须要返回一段HTML代码给client ,Content-Type="text/html"

3 、服务端须要返回一段XML代码给client ,Content-Type="text/xml"

4 、服务端须要返回一段javascript代码给client

5 、服务端须要返回一段json串给client

我们主要讨论返回javascript代码和Json对象的情况。

javascript 的 contentType 按最标准的写法 应该是 application/javascript。而经常使用的 text/javascript 已经被 rfc定义为废弃的。

可是 在这里临时不建议使用 application/javascript . 大家还是继续使用 text/javascript 为好. 由于非常多老旧浏览器并不支持 application/javascript . 而全部浏览器都支持text/javascript. 在标准和广泛的兼容性之间 还是暂且选择后者吧。

json 的 contentType 常见写法有 : text/json & text/javascript .

可是 这个 text/json 事实上是根本不存在的, 而 text/javascript 在有些时候client处理起来会有歧义. 对于json的contentType , rfc里定义的标准写法是 :application/json.

在这里毫无疑问 我们应该选择标准写法的 application/Json。

@的使用

基本使用

  • "@123456"表示输出123456到页面
  • "@中文english"表示输出"中文english"到页面

规范化contentType

  • "@json:xxxx"、"@applicaiton/x-json:xxxx"表示输出content-type为application/x-json的xxx字符串到client
  • "@xml:xxxx"、"@application/xml:xxxx" 表示输出content-type为application/xml的xxxx字符串到client
  • "@plain:xxxx"、"@text:xxxxx"、"@text/plain:xxxxx" 表示输出content-type为text/plain的字符串到client
  • "@xxxxx"、"@html:xxxx"、"@text/html:xxxxx" 表示输出content-type为text/html的字符串到client

我们支持下面Content-Type:json、xml、html、plain、text、全部以text/開始的,比方text/html、text/plain、text/javascript等;全部以application/开头的,比方applicaton/x-json等,其它的概不支持。

能够加;charset=UTF-8等修饰

  • "@json:xxxx;charset=UTF-8"、"@applicaiton/x-json:xxxx;charset=UTF-8"表示输出content-type为application/x-json;charset=UTF-8的xxx字符串到client

技巧

  • "@text/plain:json:xxxxx"、"@plain:json:xxxxx"、"@text:json:xxxxx"表示输出content-type为text/plain的"json:xxxxx"到client

response的contentType 几种类型的更多相关文章

  1. ashx中Response.ContentType的常用类型

    ashx中Response.ContentType的常用类型: text/plaintext/htmltext/xmlapplication/jsonimage/GIFapplication/x-cd ...

  2. Ajax开发中服务端Response的Content-Type

    转自http://www.cnblogs.com/hyl8218/archive/2010/03/10/1681484.html ajax开发中在请求服务器端的响应时, 对于每一种返回类型 规范的做法 ...

  3. .NET环境下导出Excel表格的两种方式和导入两种类型的Excel表格

    一.导出Excel表格的两种方式,其中两种方式指的是导出XML数据类型的Excel(即保存的时候可以只需要修改扩展名为.xls)和真正的Excel这两种. using System; using Sy ...

  4. response的contentType的类型值Response.ContentType

    MIME类型的含义 MIME类型就是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开.多用于指定一些客户端自定义的文件名,以及一些媒体 ...

  5. 关于JSP页面中的pageEncoding和contentType两种属性的区别

    转自:http://blog.csdn.net/dragon4s/article/details/6604624 JSP指令标签中<%@ page contentType="text/ ...

  6. 接收content-type:multipart/form-data类型的参数

    一.问题描述 最近在写接口程序,该接口需要与其他公司的程序对接.对方发送content-type:multipart/form-data类型的参数,结果通过request.getParameter(p ...

  7. HTTP状态码通常分为5种类型

    HTTP状态码通常分为5种类型,分别以1-5五个数字开头,由3位整数组成: -------------------------------------------------------------- ...

  8. AspNetWebApi管线中如果定义两种类型的消息处理程序(全局/路由)

    AspNetWebApi管线中如果定义两种类型的消息处理程序(全局/路由) 在AspNetWebApi管线中存在两种类型的消息处理程序(Message Handler) 1.全局消息处理程序,所有的请 ...

  9. Postman 的 Post 请求方式的四种类型的数据

    Postman 的 Post 请求方式的四种类型的数据 1. form-data 2. x-www-form-urlencoded 3. raw 4. binary 1. form-data 就是 H ...

随机推荐

  1. C,C++中的static

    在C和C++中,static都有两种基本的含义,并且这两种含义经常是互相有冲突的: 1) 在固定的地址上分配,也就是说对象是在一个特殊的静态数据区上创建的,而不是每次 函数调用时在堆栈上产生的.这也是 ...

  2. svn创建并应用补丁

    有时,我们不能提交临时局部变化,而我们需要回滚到svn最新的版本号.然,这些变化,我们要保持.提交或发送给其他同事的未来review. 怎么做?非常easy,只需要两个步骤: (1)创建一个补丁文件并 ...

  3. Android毛玻璃处理代码(Blur)

    以下为将bitmap图像处理为毛玻璃效果的图像的工具类: public class FastBlurUtil { public static Bitmap doBlur(Bitmap sentBitm ...

  4. 关于telnet协议的研究以及用java进行封装实现自己的telnet客户端(转)

    最近在做一个远程控制的模块,其中用到了telnet协议,开始用的是apache-net包的telnetclient,但发现问题不少,比较慢,还有就是判断是否read完毕的问题.后来经过讨论打算实现自己 ...

  5. 座IO理解力

    一般堵塞IO服务器通信,通常有一个单独的Acceptor线程负责监控client联系,它接收client对于每个请求连接后client分配用于处理一个新的线程,处理后.返回应答给client.线程才销 ...

  6. 深入浅出JMS(一)——JMS简要

    假设手机只能实时通话.没有邮件和短信功能发生?一个电话回来.只是没有足够的时间去连接.然后传递这款手机的信息肯定是不接受. 么不能先将信息存下来.当用户须要查看信息的时候再去获得信息呢?伴随着这个疑惑 ...

  7. Vs2010 配置驱动的开发环境

    我已被用来VS2010开发环境,之前曾经与vs2010驱动的开发环境.重装系统,一次又一次的配置,找了好几篇文章,配置没有成功,在配置阶段突然成功了,直接把原来的驱动程序的配置文件将能够接管使用. 当 ...

  8. [LeetCode160]Intersection of Two Linked Lists

    题目: Write a program to find the node at which the intersection of two singly linked lists begins.   ...

  9. MVC5+EF6 入门完整教程 总目录

    本系列文章会从一个主干开始,逐渐深入,初步规划30篇.初级10篇,中级10篇,综合项目实战10篇 初级10篇 MVC5+EF6 入门完整教程10:多对多关联表更新&使用原生SQL@201505 ...

  10. 编写ruby扩展库

    # Loads mkmf which is used to make makefiles for Ruby extensions require 'mkmf' # Give it a name ext ...