带有正则表达式的JavaScript中的URL白名单和黑名单

时间:2017-10-08 15:15:42

标签: javascript regex url whitelist blacklist

我在javascript中有两个数组,一个用于我的白名单,另一个用于黑名单。我正在使用它来查看是否应该允许访问URL。数组填充了正则表达式模式以匹配网址。为简单起见,我将使用这些数组作为示例:

var white = [
    /https?:\/\/github\.com/,
    /https?:\/\/github\.com\/username\/repo/
];

var black = [
    /https?:\/\/github.com\/username/
];

我的功能目前看起来像这样:

function can_visit(url){
    //return true if url not in white or black, or white rule is most specific.
    //return false if black rule is most specific.
}

对于github.comgithub.com/user/repo,这应该返回true,但返回false github.com/user/。一个列表中的规则可以覆盖另一个列表中的规则,只要它们更具体。

提前致谢。

0 个答案:

没有答案