mvc3的Url地址重写与优化

Url地址重写与优化的作用主要表现如下

⒈缩短Url,隐藏实际路径提高安全性。
⒉易于用户记忆和键入。
⒊易于被搜索引擎收录。
以下是我在MVC3中准备重写的一些常见的Url
http://www.xxxx.com/pub/users   //用户广场
http://www.xxxx.com/zhangsan    //用户空间
http://www.xxxx.com/zhangsan/photos  //用户所有照片
http://www.xxxx.com/zhangsan/photos?pid=12334324  //用户指定照片
http://www.xxxx.com/zhangsan/photos/date-2012-12  //用户指定时间拍摄的照片
http://www.xxxx.com/zhangsan/photos/date-2012-12?pid=122343243  //用户指定时间拍摄的照片  从指定照片开始
http://www.xxxx.com/zhangsan/photos/tag-美女  //用户拍摄的标签为美女的照片
 
我只要在Global.asax.cs文件中做如下配置即可达到重写目的
 public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapRoute(
               "Pub-User",
               "pub/{action}",
               new { controller = "Pub", action = "Index" }
               );

            routes.MapRoute(
               "User-Space",
               "{userid}",
               new { controller = "User", action = "Index"}
               );

            routes.MapRoute(
              "User-Photos",
              "{userid}/Photos",
              new { controller = "Space", action = "PhotoViews" ,pid = "[0-9]{6,}"}
              );

            routes.MapRoute(
              "User-Photos-date",
              "{userid}/Photos/date-{year}-{month}",
              new { controller = "Space", action = "PhotoViewMonths", year = "[0-9]{4}", month = "[0-9]{1,2}" }
              );

            routes.MapRoute(
              "User-Photos-tag",
              "{userid}/Photos/tag-{tag}",
              new { controller = "Space", action = "PhotoViewTags" }
              );

            routes.MapRoute(
                "Default", // Route name
                "", // URL with parameters
                new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
            );
        }

 

转载于:https://www.cnblogs.com/huangzelin/archive/2013/04/11/3015749.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用Spring Boot的MVC框架读取URL的内容并写入响应可以通过以下步骤实现: 1. 创建一个Controller类,并使用@Controller注解进行标记。 2. 在Controller类中创建一个处理GET请求的方法,并使用@GetMapping注解进行标记。 3. 在该方法中,使用@RequestParam注解获取URL中的参数值。 4. 使用Java的URL类创建URL对象,将参数值追加到URL中。 5. 使用Java的URLConnection类打开URL连接,并获取连接的输入流。 6. 使用Java的BufferedReader对输入流进行读取,并将读取的内容存储到一个字符串变量中。 7. 关闭输入流和连接。 8. 将读取的内容写入响应,可以使用@ResponseBody注解将字符串作为响应的内容返回。 以下是一个示例代码: ```java import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.URL; import java.net.URLConnection; @Controller public class MyController { @GetMapping("/get-content") @ResponseBody public String getContentFromURL(@RequestParam String url) throws IOException { URL websiteURL = new URL(url); URLConnection connection = websiteURL.openConnection(); BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream())); StringBuilder content = new StringBuilder(); String line; while ((line = reader.readLine()) != null) { content.append(line); } reader.close(); connection.disconnect(); return content.toString(); } } ``` 在上述示例中,我们创建了一个`getContentFromURL`方法,该方法接收一个`url`参数,读取该URL的内容,并将内容以字符串形式返回作为响应。通过访问`/get-content?url={url}`的URL,可以将URL的内容返回给客户端。注意需要处理可能的异常情况,并在实际应用中对URL的合法性进行验证和参数的过滤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值