处理应答
改变默认内容类型( Content-Type)
result的内容类型会根据你指定的java值自动推断出来
例如:
Result textResult = ok("Hello World!");
这将会自动的设置内容类型为 text/plain
,而:
Result jsonResult = ok(jerksonObject);
将会设置内容类型为 application/json
.
这是十分有用的,如果你想改变它,只需要调用as(newContentType)
方法来创建一个新的result:
Result htmlResult = ok("<h1>Hello World!</h1>").as("text/html");
你也可以设置HTTP应答的内容类型。
public static Result index() {
response().setContentType("text/html");
return ok("<h1>Hello World!</h1>");
}
设置HTTP应答头
你可以添加(或更新)任何HTTP应答头:
public static Result index() {
response().setContentType("text/html");
response().setHeader(CACHE_CONTROL, "max-age=3600");
response().setHeader(ETAG, "xxx"); return ok("<h1>Hello World!</h1>");
}
注意 设置HTTP头会覆盖当前的值。
设置和删除cookies
Cookies只不过是HTTP头的特定格式,但是play 提供了一系列便利方法:
你可以很容易给HTTP应答添加一个Cookie:
response().setCookie("theme", "blue");
你也可以删除已有的Cookie:
response().discardCookies("theme");
指定文本results 的字符编码
正确的处理字符编码对于文本类型的HTTP应答是非常重要的,Play默认用 utf-8
.
编码即用于把文本应答转换成相应的网络字节码,也为内容类型头添加恰当的 ;charset=xxx
扩展
你可以在生成 Result
值的时候指定编码:
public static Result index() {
response().setContentType("text/html; charset=iso-8859-1");
return ok("<h1>Hello World!</h1>", "iso-8859-1");
}
分享到:
相关推荐
《Play 2.0 文档》是一份详尽的指南,专为希望利用 Play 框架构建现代 Web 应用程序的 Java 和 Scala 开发者设计。Play 2.0 是一个高生产力的框架,它整合了开发现代 Web 应用所需的各种组件和 API,基于轻量级、无...
- 这部分可能讨论了Spring 3版本的改进和新特性,同时涵盖了Java Persistence API(JPA)2.0,这是Spring MVC中常用的持久层技术。 这些文档涵盖了Spring MVC从基础到高级的多个方面,包括框架的使用、最佳实践、...
3. **版本号2.0**:这表明 GGScript 已经经过至少一次重大更新,2.0 版本可能包含了错误修复、性能提升、新功能的添加,或者对用户界面和用户体验的改进。 4. **Android 开发**:由于 GGScript_2.0.apk 是一个 ...
这种集成方式在过去的项目中非常常见,但随着技术的发展,现在更多的开发者可能转向使用Spring Boot、Hibernate ORM(取代XFire的现代Web服务框架如Spring Web Services)和更新版本的Struts或替代品如Play ...
第二个重要版本v2.0则是在2006年3月发布的。 - **语言特点**: - **静态类型语言**:Scala是一种静态类型的编程语言,这意味着类型检查在编译时进行,而不是在运行时。 - **面向对象+函数式编程**:Scala融合了...
5. **Java框架**:在项目管理中,开发者可能利用Spring Framework、Hibernate ORM、Struts或Play Framework等Java框架来简化开发,提高代码复用性,加速项目进度。 6. **敏捷开发**:在Java软件项目管理中,敏捷...
7. **Groovy与Grails**: Groovy是一种面向Java平台的动态语言,而Grails是基于Groovy的Web应用框架。2015年,Grails 3.x版本发布,带来了许多改进,包括更接近Spring Boot的结构和更快的开发周期。 8. **Apache ...
3. **Java Web应用开发**: 项目可能包含Java Web应用程序的源代码,如Servlets、JSP(JavaServer Pages)或其他基于Spring、Play、Vaadin等框架的应用。 4. **前端技术**: 为了创建用户界面,项目可能使用HTML、CSS...
3. **Java后端开发**:在Java后端,开发者可能使用Spring Boot或Play Framework等框架来构建API服务,这些框架提供了处理HTTP请求、路由、数据访问和事务管理等功能,使得开发高效且易于维护。 4. **RESTful API...
这个项目的描述表明它是一个新存储库,并且其`README.md`文件尚处于初步阶段,意味着项目可能还在开发初期,文档可能不完整,但它是项目开发过程中不可或缺的一部分,通常包含项目简介、安装指南、使用方法等信息。...
3. **Android SDK**:开发者会使用Android SDK来访问Android系统的API,实现各种功能,如用户界面、网络通信、多媒体处理等。 4. **UI设计**:应用可能包含XML布局文件,用于定义用户界面的结构和样式。 5. **音频...
2. **Java编程**:作为主要编程语言,Java的面向对象特性、类库使用、异常处理以及数据结构等知识将在项目中起到关键作用。 3. **网络通信**:应用需要与Spotify服务器进行交互,因此需要理解HTTP协议和JSON数据...
8. **开源许可证**:作为一个开源项目,它应该包含某种形式的开源许可证,例如MIT、Apache 2.0或GPL,这些都会规定其他开发者如何使用和修改源代码。 9. **API集成**:如果应用有更复杂的需求,比如与其他服务集成...