Angular html5模式和HAL浏览器

埃尔南·迪亚兹(Hernan Diaz)

我正在AngularJS应用程序中实现html5模式。在服务器中,我需要将没有后缀(因此没有扩展名,不是静态资源)的所有内容转发到基本url:

@RequestMapping(value = "/{path:[^\\.]*}")
public String redirect(HttpServletRequest request) {
    return "forward:/";
}

这对于Angular应用程序来说可以正常工作,但是现在人们希望使用HAL浏览器,并且该控制器还转发了一些浏览器请求,例如https:// localhost:8080 / api

是否可以修改正则表达式以匹配不带后缀的所有内容(如现在)以及不带/ api的所有内容?

这是当前的正则表达式:

"/{path:[^\\.]*}"

例如:

它不应该匹配:

  • 任何/ api
  • 任何东西
  • 任何/文件名。扩展名
  • 任何/文件名。扩展名

(列表中的最后两点可以使用当前的正则表达式确定)

它应该匹配:

  • 上面未列出的所有内容
威克多·斯特里比尤(WiktorStribiżew)

看来您可以使用

"/{path:(?!.*api)[^.]*}"

它匹配行上没有点且没有api子串的字符串。请注意,如果您有多行输入,请使用[\s\S]而不是.内部的lookahead。该模式还允许使用空字符串(*如果不允许使用空输入,请用+`替换最终字符)。

另外,请注意,如果默认情况下未锚定模式(我想在这里),或者您想在正则表达式测试器中对其进行测试,则需要添加锚点:"/{path:^(?!.*api)[^.]*$}"^锚字符串的开头匹配和$锚字符串的结尾匹配。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类常见问题

如何使用Angular检测浏览器?

来自分类Dev

如何强制Angular在HTML5模式下向服务器发送请求?

来自分类Dev

浏览器是否支持不同的HTML5模式正则表达式功能?

来自分类Dev

Angular-UI路由器路由-HTML5模式

来自分类Dev

Angular UI Router忽略HTML5模式关闭

来自分类Dev

Web浏览器如何区分HTML5和HTML4?

来自分类Dev

Angular HTML5模式,Wordpress,重写,Apache和您

来自分类Dev

浏览器与angular.js和angular-ui引导程序的兼容性

来自分类Dev

浏览器与angular.js和angular-ui引导程序的兼容性

来自分类Dev

使用启用了Html5模式的Angular Ui路由器时,页面重新加载失败

来自分类Dev

获取浏览器时间格式Angular

来自分类Dev

浏览器对Angular材质的支持

来自分类Dev

Angular HTML5模式和ui-router返回403

来自分类Dev

Angular $ templateCache与HTML5浏览器缓存

来自分类Dev

Angular SPA的浏览器同步

来自分类Dev

Angular 9,KeyCloak,ServiceWorker和Edge浏览器

来自分类Dev

如何使用浏览器的Confirm()和Angular模板语句?

来自分类Dev

获取浏览器时间格式Angular

来自分类Dev

如何强制Angular在HTML5模式下将请求发送到服务器?

来自分类Dev

Angular和HTML5全屏API

来自分类Dev

Angular指令使浏览器崩溃

来自分类Dev

Angular UI Router忽略HTML5模式关闭

来自分类Dev

如何检查我的浏览器是否支持HTML5 Canvas混合模式?

来自分类Dev

使用“ HTML 5 URL”时,运行angular 2.0应用的浏览器如何知道是否对服务器进行调用

来自分类Dev

在angular2中,如何在手动刷新/重新加载浏览器后保留html5控制值?

来自分类Dev

Angular 2 开发和浏览器缓存

来自分类Dev

Angular 和浏览器在加载数据方面的限制

来自分类Dev

Angular 5 - 浏览器关闭时清除 localStorage

来自分类Dev

使用 Google Cloud App Engine 的 Angular html5 模式

Related 相关文章

  1. 1

    如何使用Angular检测浏览器?

  2. 2

    如何强制Angular在HTML5模式下向服务器发送请求?

  3. 3

    浏览器是否支持不同的HTML5模式正则表达式功能?

  4. 4

    Angular-UI路由器路由-HTML5模式

  5. 5

    Angular UI Router忽略HTML5模式关闭

  6. 6

    Web浏览器如何区分HTML5和HTML4?

  7. 7

    Angular HTML5模式,Wordpress,重写,Apache和您

  8. 8

    浏览器与angular.js和angular-ui引导程序的兼容性

  9. 9

    浏览器与angular.js和angular-ui引导程序的兼容性

  10. 10

    使用启用了Html5模式的Angular Ui路由器时,页面重新加载失败

  11. 11

    获取浏览器时间格式Angular

  12. 12

    浏览器对Angular材质的支持

  13. 13

    Angular HTML5模式和ui-router返回403

  14. 14

    Angular $ templateCache与HTML5浏览器缓存

  15. 15

    Angular SPA的浏览器同步

  16. 16

    Angular 9,KeyCloak,ServiceWorker和Edge浏览器

  17. 17

    如何使用浏览器的Confirm()和Angular模板语句?

  18. 18

    获取浏览器时间格式Angular

  19. 19

    如何强制Angular在HTML5模式下将请求发送到服务器?

  20. 20

    Angular和HTML5全屏API

  21. 21

    Angular指令使浏览器崩溃

  22. 22

    Angular UI Router忽略HTML5模式关闭

  23. 23

    如何检查我的浏览器是否支持HTML5 Canvas混合模式?

  24. 24

    使用“ HTML 5 URL”时,运行angular 2.0应用的浏览器如何知道是否对服务器进行调用

  25. 25

    在angular2中,如何在手动刷新/重新加载浏览器后保留html5控制值?

  26. 26

    Angular 2 开发和浏览器缓存

  27. 27

    Angular 和浏览器在加载数据方面的限制

  28. 28

    Angular 5 - 浏览器关闭时清除 localStorage

  29. 29

    使用 Google Cloud App Engine 的 Angular html5 模式

热门标签

归档