使用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和“插件”架构,大大简化了整个实现。
- ››使用linux中的quota教程
- ››apache设置域名绑定 以及绑定不起作用的排查
- ››使用jxl生成带动态折线图的excel
- ››apache rewrite将指定URL转向指定的几个服务器
- ››使用mysql mysqldump进行数据库迁移
- ››使用jquery是新tab形式
- ››使用QUnit进行Javascript单元测试
- ››使用UITextFieldDelegate来隐藏键盘
- ››使用公式提取Excel中的日期后发现格式不对
- ››使用SQL Azure 的BI 解决方案
- ››使用PLSQL Developer工具导出sql文件
- ››使用双缓冲技术实现Android画板应用
更多精彩
赞助商链接