2010-05-02 87 views
0

我想捕捉當用戶點擊一個鏈接時提出的mozswing請求,或者提交一個表單,以便套接字連接永遠不會發生,我可以回答「我自己」的請求。如何在mozswing中捕獲請求?

+0

你好,你有沒有發現一個解決方案?我也需要它... – Laphroaig 2011-03-02 22:31:03

回答

2

我發現該怎麼做。我希望這有助於某人。

編輯:最好的辦法聽鏈接:

final ContentAdapter ca = moz.getChromeAdapter().getContentAdapter(); 

nsIURIContentListener mycl = new nsIURIContentListener() { 
    public boolean onStartURIOpen(nsIURI aURI) { 
     System.out.println(aURI.getHost() + aURI.getPath()); 
     return true; 
    } 
    public boolean doContent(String aContentType, boolean aIsContentPreferred, nsIRequest aRequest, nsIStreamListener[] aContentHandler) { 
     System.out.println("1"); 
     return ca.doContent(aContentType, aIsContentPreferred, aRequest, aContentHandler); 
    } 
    public boolean isPreferred(String aContentType, String[] aDesiredContentType) { 
     System.out.println("2"); 
     return ca.isPreferred(aContentType, aDesiredContentType); 
    } 
    public boolean canHandleContent(String aContentType, boolean aIsContentPreferred, String[] aDesiredContentType) { 
     System.out.println("3"); 
     return ca.canHandleContent(aContentType, aIsContentPreferred, aDesiredContentType); 
    } 
    public nsISupports getLoadCookie() { 
     System.out.println("4"); 
     return ca.getLoadCookie(); 
    } 
    public void setLoadCookie(nsISupports aLoadCookie) { 
     System.out.println("5"); 
     ca.setLoadCookie(aLoadCookie); 
    } 
    public nsIURIContentListener getParentContentListener() { 
     System.out.println("6"); 
     return ca.getParentContentListener(); 
    } 
    public void setParentContentListener(nsIURIContentListener aParentContentListener) { 
     System.out.println("7"); 
     ca.setParentContentListener(aParentContentListener); 
    } 
    public nsISupports queryInterface(String uuid) { 
     System.out.println("8"); 
     return ca.queryInterface(uuid); 
    } 
}; 

moz.getChromeAdapter().getWebBrowser().setParentURIContentListener(mycl); 
+0

這不是我想要的。我想要捕捉瀏覽器發出的請求,以便它們永遠不會碰到套接字,而是直接處理請求並回答它。無論如何,我不確定這是否可行。這背後的想法是能夠通過webstart部署基於web的應用程序,而不必向用戶請求特殊的權限。 – amirouche 2011-04-10 12:48:26