如何在 mozswing 中捕获请求?

发布于 2024-08-31 18:09:14 字数 69 浏览 7 评论 0原文

当用户单击链接或提交表单时,我想捕获 mozswing 发出的请求,以便永远不会建立套接字连接,并且我可以“自己”回答请求。

I would like to catch requests made by mozswing when a the user click on a link, or submit a form so that the socket connection is never made and I can answer the request "myself".

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

¢蛋碎的人ぎ生 2024-09-07 18:09:14

我知道该怎么做了。我希望这对某人有帮助。

编辑:监听链接的最佳方式:

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);

I found out how to do. I hope this helps somebody.

EDIT: Best way to listen for links:

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);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文