本文作者:DurkBlue

记录一下针对URL字符串,如何截取除域名后半部分的字符串path推荐

DurkBlue 2023-12-25 800
记录一下针对URL字符串,如何截取除域名后半部分的字符串path摘要:         在项目开发中,有些前端人员习惯在文件上传的时候只保存文件可访问的全路径存进数据库里面...

        在项目开发中,有些前端人员习惯在文件上传的时候只保存文件可访问的全路径存进数据库里面。如http://192.168.1.3:28001/profile/2023/12/21/sLaO849swLWsZtF46Fl4wooOflU3ff_20231221143714A001.png  这样操作本没有什么错误。但是会给项目留下一个风险。就是万一服务器的域名进行更换了。如图例中192.168.1.3如果换为新的域名,则图片就打不开了。而域名进行更换也是时有发生的事情。针对这样的坑。特别记录一下后端处理方法。如何存储URL域名字符串path部分(就是除域名外的后半部分如/profile/2023/12/21/sLaO849swLWsZtF46Fl4wooOflU3ff_20231221143714A001.png)。废话不多说。代码如下

    

        

/**
* 通过对URL字符串进行截取除域名后获取path部分的字符串
* @param url 要处理的URL字符串
* @return path部分的字符串
*/
public static final String getPathByUrlString(String url){
   String regex = "^(http|https)://([^/]+)(/?.*)$";
   String path = null;
   if(url.matches(regex)){
       Integer startIndex = url.indexOf("://");
       if(startIndex != -1){
           startIndex += 3;
           int endIndex = url.indexOf("/", startIndex);
           if (endIndex != -1) {
               path = url.substring(endIndex);
           } else {
               path = url.substring(startIndex);
           }
       }
   }
   return path;
}

记录一下针对URL字符串,如何截取除域名后半部分的字符串path  第1张


此篇文章由DurkBlue博主亲自发布,转载请注明来处哟
文章投稿或转载声明

来源:DurkBlue版权归原作者所有,转载请保留出处。本站文章发布于 2023-12-25
温馨提示:文章内容系作者个人观点,不代表DurkBlue博客对其观点赞同或支持。

赞(1)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

阅读
分享