2011-07-28 67 views
1

我有RPC調用來從數據庫中獲取一些值,我使用GWT,在哪裏使用RPC調用,相同的代碼與IE正常工作,但相同的代碼不適用於Firefox。這根本不符合邏輯。同時在gwt調度傳入的RPC調用

2011-07-28 15:27:47.657:WARN:/:Exception while dispatching incoming RPC call 
java.lang.SecurityException: Blocked request without GWT permutation header (XSRF attack?) 
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.checkPermutationStrongName(RemoteServiceServlet.java:272) 
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:203) 
    at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248) 
    at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) 
+0

我認爲在獲得有用的答案之前,您至少需要提出一些問題並提交您的提交。 –

+0

真的很抱歉爲此,Acutally我有RPC調用來從數據庫中獲取一些值,我使用GWT,在哪裏使用RPC調用,相同的代碼與Internet Explorer工作正常,但相同的代碼不適用於Firefox,你能請在這裏幫忙。 –

回答

3

在GWT 2.3的CRO站點請求僞造加入,我假設你已經看過http://code.google.com/webtoolkit/doc/latest/DevGuideSecurityRpcXsrf.html並作出必要的修改?

+0

感謝您的回覆,通過重寫下面的方法,/ ** *它將檢查PermutationStrong名稱,只有當它被設置。 * Content-Type text/x-gwt-rpc; charset = utf-8 ...這是臨時解決方案。 * X-GWT-置換F1AEC601C5D8E4490E7096AB58EB */ @Override 保護無效checkPermutationStrongName()拋出拋出:SecurityException { 最終HttpServletRequest的REQ = this.getThreadLocalRequest();如果(!req.getContentType()。contains(「text/x-gwt-rpc」)){ super.checkPermutationStrongName(); } } –