You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
While this is how you should match a path per the docs, the CLI doesn't correctly generate the regex required to do the wildcard matching, it generates /^\/manage*$/ not /^\/manage.*$/ (not the missing . to indicate the any character after match). There also isn't a test case to cover this in the glob.spec.ts tests.
You can see the failure to find it appropriately looking at the output in the silly logging (it's about a dozen lines down):
[swa] --------------------------------------------------------
[swa] ------------------- processing route -------------------
[swa] --------------------------------------------------------
[swa] processing /manage/events
[swa] checking for matching route
[swa] check if request match route
[swa] - route: /manage*
[swa] - wildcard: true
[swa] checking wildcard route
[swa] - glob: /manage*
[swa] - pathBeforeWildcard: /manage
[swa] checking if glob expression is valid
[swa] - glob: /manage*
[swa] - glob ends with *. Return true
[swa] - route regexp: /manage*
[swa] turning glob expression into valid RegExp
[swa] - glob: /manage*
[swa] - regexp: /^\/manage*$/
[swa] - isMatch: false
[swa] - alternateRequestPath: /manage/events/index.html
[swa] checking wildcard route
[swa] - glob: /manage*
[swa] - pathBeforeWildcard: /manage
[swa] checking if glob expression is valid
[swa] - glob: /manage*
[swa] - glob ends with *. Return true
[swa] - route regexp: /manage*
[swa] turning glob expression into valid RegExp
[swa] - glob: /manage*
[swa] - regexp: /^\/manage*$/
[swa] - isMatch: false
[swa] checking auth request
[swa] - not an auth request
[swa] checking function request
[swa] - not a function request
[swa] checking data-api request
[swa] - not a data Api request
[swa] checking HTTP method: GET
[swa] - method is valid (allow-list: GET,HEAD,OPTIONS)
[swa] checking for query params
[swa] checking rewrite auth login request
[swa] checking rewrite auth logout request
[swa] checking authorizations for route
[swa] - no matching rule
[swa] - access authorized
[swa] using userConfig
[swa] - userConfig:
[swa] - routes:
[swa] - 0:
[swa] - route: /manage*
[swa] - allowedRoles:
[swa] - 0: authenticated
[swa] - responseOverrides:
[swa] - 401:
[swa] - rewrite: /
[swa] - statusCode: 200
[swa] checking storage content
[swa] remote dev server detected.
[swa] - url: /manage/events
[swa] - target: http://localhost:5175
[swa] customUrl: false
[swa] is4xx: false
[swa] remote dev server detected. Proxying request
[swa] - url: /manage/events
[swa] - code: 200
[swa] GET http://localhost:5175/manage/events (proxy)
[swa] Connected to tcp:127.0.0.1:5175 successfully
[swa] http://localhost:5175 validated successfully
[swa] Connected to tcp:localhost:5175 successfully
[swa] getting response from dev server
[swa] GET http://localhost:5176/manage/events - 200
The text was updated successfully, but these errors were encountered:
aaronpowell
added a commit
to aaronpowell/swa-emulator
that referenced
this issue
Jan 2, 2024
I have a
staticwebapp.config.json
with a route defined as follows:While this is how you should match a path per the docs, the CLI doesn't correctly generate the regex required to do the wildcard matching, it generates
/^\/manage*$/
not/^\/manage.*$/
(not the missing.
to indicate the any character after match). There also isn't a test case to cover this in theglob.spec.ts
tests.You can see the failure to find it appropriately looking at the output in the
silly
logging (it's about a dozen lines down):The text was updated successfully, but these errors were encountered: