首页 > 其他分享 >Solon 路由的 Url 大小写匹配与事项注意

Solon 路由的 Url 大小写匹配与事项注意

时间:2023-05-07 22:55:53浏览次数:38  
标签:Solon Url http Mapping 大小写 test 8080 public localhost

Solon 路由器对 url 的匹配默认是 “忽略大小写” 的。如果有需要,可以强制开启:v2.2.14 后支持

@SolonMain
public class App{
    public static void main(String args){
        Solon.start(App.class, args, app -> {
            app.router().caseSensitive(true); //或许以后默认值会变,可以强制用 false 或 true 锁定
        });
    }
}

开启之后,以下几个请求就是有区别的了:

// http://localhost:8080/test/Demo
// http://localhost:8080/test/demo
// http://localhost:8080/test/deMo

//需要三个接口去对应
@Mapping("test")
@Controller
public class DemoController{
    @Mapping("Demo")
    public void demo1(){
    }
    
    @Mapping("demo")
    public void demo2(){
    }
    
    @Mapping("deMo")
    public void demo2(){
    }
}

如果不开启?这三个请求是一样的:

// http://localhost:8080/test/Demo
// http://localhost:8080/test/demo
// http://localhost:8080/test/deMo

//由一个接口去对应
@Mapping("test")
@Controller
public class DemoController{
    @Mapping("demo")
    public void demo2(){
    }
}

在使用 “ctx.path()” 做比对时。。。建议改用:“ctx.pathAsUpper()、ctx.pathAsLower()” 做比对。

标签:Solon,Url,http,Mapping,大小写,test,8080,public,localhost
From: https://www.cnblogs.com/noear/p/17380395.html

相关文章

  • URL查询字符串与JS对象互转
    formatUrlQuery:function(...urlQuerys){letresult={};urlQuerys.forEach((urlQuery)=>{if(typeofurlQuery=='object'){Object.assign(result,urlQuery);}else{Object.assign(result,se......
  • libcurl 移植 支持https,openssl NDK (二)
    一、编译环境介绍:(有一部分原因是环境造成编译失败)系统版本:ubuntu-16.04.3-desktop-amd6464位(可以使用虚拟机)NDK版本:Android-ndk-r10b                 (已经测试,使用Android-ndk-r17b无法通过)源码版本:curl-7.61.0               https......
  • Windows10下安装OpenSSL curl WIN32 /WIN64 openssl1.1.x
     首先是环境,强调下环境,很多问题是环境造成的。1.WINDOWS1064位系统;2.VisualStudio2015 工具: 1.ActivePerl-5.24.3.2404-MSWin32-x64-404865.exe,下载地址:https://www.activestate.com/products/activeperl/downloads/  2. openssl-1.1.0f.tar.gz  下载地址: h......
  • 【转载】JS手从URL中获取指定参数,不需要正则,很方便
    参考https://zhuanlan.zhihu.com/p/412254881代码现代方式在现代浏览器中,我们可以使用浏览器提供的URL对象来获取参数。这里方法最简单,bug少,不用我们操心。functiongetQueryString(name){//consturl=newURL(window.location.href);consturl_string="htt......
  • get请求, 参数中包含url地址, urlEncode相关问题处理
    url请求参数值进行urlEncode,可解决下列异常,当然也能解决参数值含有&,=或其他特殊符号的问题情况一:参数中url的参数丢失packagecom.xxxxx.controller;importio.swagger.annotations.Api;importorg.springframework.web.bind.annotation.*;@RestController@RequestMapp......
  • application/x-www-form-urlencoded & multipart/form-data & text/plain
    FORM元素的enctype属性指定了表单数据向服务器提交时所采用的编码类型  我们知道在通过POST方式向服务器发送AJAX请求时最好要通过设置请求头来指定为application/x-www-form-urlencoded编码类型。知道通过表单上传文件时必须指定编码类型为"multipart/form-data"。而text/plain......
  • flask--app.add_url_rule()函数 和 类视图详解
    flask--app.add_url_rule()函数和类视图详解app.add_url_rule()函数在flask中,我们知道给一个函数添加url的时候,只需要使用装饰器@app.route('')装饰对应的函数就可以了。为什么这个装饰器就可以给函数视图添加url规则呢?查看app.route()源码发现,这个装饰器在里面调用的另外一......
  • post请求application/x-www-form-urlencoded
    importorg.springframework.http.HttpHeaders;importorg.springframework.http.MediaType;importorg.springframework.web.client.RestTemplateimportorg.springframework.util.MultiValueMap;importorg.springframework.util.LinkedMultiValueMap;importorg.springfra......
  • java 根据URL 下载文件
    1、废话不多说,如下图所示@ApiOperation("文件下载")@GetMapping("/download")publicvoiddownload(@RequestParam("fileUrl")StringfileUrl,@RequestParam("fileName")StringfileName,HttpServletResponseresponse)throws......
  • Failed to auto-configure a DataSource: 'spring.datasource.url' is not specified
    导入一个新的springbootmaven项目启动一直报这个错,查出来的答案都说是加注解把数据库扫描给排除掉,这种方式其实有点鸵鸟,项目原先是没问题的,现在导入到自己的环境启动不起来,那肯定是不能去改动代码的。排查了一遍,发现是项目中的resources文件没有指定成资源文件,所以找不到数据库......