使用Apache Shindig为客户应用程序加入社区内容
2010-03-01 00:00:00 来源:WEB开发网清单7 禁止覆盖空消息体
最后,当POST方式不会返回任何数据,Shindig实现将空数据转换成一个空的JSON对象,返回的类型为“application/json”。这将导致浏览器尝试主动与用户会话。org.apache.shindig.protocol.DataServiceServlet(清单7)解决了这一问题:
org.apache.shindig.protocol.DataServiceServlet (Listing 7) solves this problem:
servletResponse.setContentType(converter.getContentType());
if
(responseItem.getErrorCode() >= 200 && responseItem.getErrorCode() < 400) {
Object response = responseItem.getResponse();
// TODO: ugliness resulting from not using RestfulItem
if
(!(response
instanceof
DataCollection) && !(response
instanceof
RestfulCollection)) {
//BL - modified to not return fake responce
if
(response
instanceof
Map){
if
(((Map)response).isEmpty()){
servletResponse.setContentType("text/plain");
return
;
}
}
response = ImmutableMap.of("entry", response);
}
清单8 禁用空响应
示例应用程序
在这篇文章中,我们描述OpenSococial的实现,用于构造GeoSpatial OpenSocial mashup,允许用户和他的朋友把他们最喜欢的地方放在地图上(图6)
图6 地图上用户和他的朋友
它还允许将用户信息和他最爱的地方以及社区网络信息(图7)发送给另一个朋友。
图7 社区网络信息
这种简单的实现只是社区网络和地理空间数据之间许多潜在协同效应之一。基于以上所描述的结合两者的方法,能实现许多其他有趣的混搭网站。
结论
开源社区API的扩展使它很难开发出应用程序支持多种现有的社区网络。在本文中提出的一个解决方案,通过第三方提供的标准API“隐藏”前端实现差异来克服这些问题。 Apache Shindig,提供API和“插件”架构,大大简化了整个实现。
- ››使用脚本恢复WinXP系统的用户登录密码
- ››使用phpMyadmin创建数据库及独立数据库帐号
- ››使用Zend Framework框架中的Zend_Mail模块发送邮件...
- ››Apache添加mod_aspdotnet.so支持ASP.NET配置指南
- ››使用cout标准输出如何控制小数点后位数
- ››使用nofollow标签做SEO的技巧
- ››使用 WebSphere Message Broker 的 WebSphere Tra...
- ››使用SQL Server事件探查器做应用程序的性能分析
- ››使用SQL Server事件探查器分析死锁原因
- ››Apache中改变php.ini的路径
- ››使用纯文本文件打造WCF服务
- ››使用 Dojo 开发定制 Business Space 小部件,第 4...
更多精彩
赞助商链接