Skip to content

"match" in meta file didn't support port #4

@Mr-Python-in-China

Description

@Mr-Python-in-China

I tried:

{
  "name":"test",
  "match": ["*://localhost:54220/"]
}

And got an error in console:

Error matching script "main": TypeError: Invalid pattern: *://localhost:54220/
    at urlMatch (utils.js:23:15)
    at eval (client.js:27:60)
    at Array.some (<anonymous>)
    at matchUserscript (client.js:27:21)
    at Array.filter (<anonymous>)
    at Proxy.eval (client.js:22:13)
    at ./node_modules/.store/webpack-monkey-virtual-b8d7e0e2c3/package/lib/client/client.js (eval at onload (localhost/:78:13), <anonymous>:455:1)
    at __webpack_require__ (eval at onload (localhost/:78:13), <anonymous>:36:32)
    at __webpack_exec__ (eval at onload (localhost/:78:13), <anonymous>:633:48)
    at eval (eval at onload (localhost/:78:13), <anonymous>:634:471)

In utils.js

function urlMatch(pattern, url) {
    const matcher = (0, browser_extension_url_match_1.matchPattern)(pattern);
    if (!matcher.valid) {
        throw new TypeError("Invalid pattern: " + pattern);
    }
    return matcher.match(url);
}

matcher.error is Error: Host "localhost:54220" cannot include a port number. All ports are matched by default..

Then I tried "match": ["*://localhost/"] and visited localhost:54220, but matcher.match(url) return false, so my script didn't work.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions