限制gtkmozembed仅从某些服务器加载页面

2024-04-26 17:31:48 发布

您现在位置:Python中文网/ 问答频道 /正文

对于一个Python项目,我使用gtkmozembed()作为一个简单的HTML浏览器。我要找的是:

(1)限制,允许连接到哪些服务器,例如仅http://localhost。你知道吗

和/或

(2)一种“onClick()”函数,用于检查用户点击的链接是否指向允许的页面/服务器。你知道吗

有人有主意吗?你知道吗


Tags: 项目函数服务器localhosthttp链接html检查用户
1条回答
网友
1楼 · 发布于 2024-04-26 17:31:48

好吧,这太尴尬了。我一直在stackoverflow问问题,不久之后就在别处找到了答案。对不起的。你知道吗

尽管如此,这是答:gtkmozemb有一个名为"open-uri"的信号,可以连接到如下回调函数:

browser = gtkmozembed.MozEmbed()
browser.connect("open-uri", OpenUri)

def OpenUri(mozembed, uri, data=None):
    if uri.startswith('http://localhost/'):
        print "Will now open", uri, "..."
        return False

    print uri, "is not in the list of allowed uris." + "\nLoading denied."
    return True

除非有人有更好的解决办法。。。我要用这个。你知道吗

电子邮件:

此解决方案不是100%节省。虽然用户不能直接打开不允许的链接,但源代码中嵌入的链接,如

 <img src="http://cdn.sstatic.net/stackoverflow/img/apple-touch-icon.png" />

或者

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>

仍将加载!你知道吗

相关问题 更多 >