从appengine blob商店提供GWT排列 - 未找到XSRF

时间:2012-06-16 04:50:37

标签: java google-app-engine gwt gwt-rpc

在尝试从blob存储中提供GWT排列以逃避静态文件的AppEngine硬限制150 mb时,我已经成功地为“html”和图像文件“jpeg,png,.etc”这样做了“以及其他.rpc调用,但我挂了XSRF电话。

在服务器日志中,我看到: 未找到序列化策略文件'/theapplication/CCA65B31464BDB27545C23C142FEEEF8.gwt.rpc';

我的上传日志显示已上传/CCA65B31464BDB27545C23C142FEEEF8.gwt.rpc:HTTP / 1.1 200确定

请求网址显示http://14.applicationXYZ.appspot.com/xsrf

RequestPayload显示:http://14.applicationXYZ.appspot.com/theapplication/|CCA65B31464BDB27545C23C142FEEEF8|com.google.gwt.user.client.rpc.XsrfTokenService|getNewXsrfToken|1|2|3|4|0|

其他rpc调用正在解析(通过服务器过滤器正在查找/应用程序并将请求映射到要提供的blob),如下例所示,在没有Xsrf请求的情况下进行rpc调用(因为用户未记录)在尚)

req url - http://14.applicationXYZ.appspot.com/someRPCCall

RequestPayload - http://14.applicationXYZ.appspot.com/theapplication/|62D7E6737056C685E10947B640409549|com.abc.client.rpc.Service|doWork|java.lang.String/2004016611|java.lang.Boolean/476441737|wwwerr|1|2|3|4|3|5|5|6|7|7|6|0|

所以,我有两个问题:

1)为什么XSRF调用无法返回适当的blob,即。为什么xrsf调用不会像其他url调用/ theapplication / *那样被过滤器处理? 2)我该怎么办? 3)另外,我尝试将内容类型设置为“text / x-gwt-rpc; charset = UTF-8,并且在我上传blob时也未指定。任何人都知道* .gwt.rpc的内容类型应该是什么我确实让xrsf工作了?错误的内容类型会导致问题吗?

***注意applicationXYZ不是真名,所以链接不起作用。

1 个答案:

答案 0 :(得分:0)

OK / xsrf也被映射到servlet,因此如果过滤器返回blob而不传递过滤器,则它似乎无法到达servlet。

无论如何,只需正常上传少量.rpc文件就可以轻松上传,而不是像blob一样上传。