mi5这款神机今年6月份官网下架,黑科技就这么下架了吗?答案是否定的。下面小编就带你找到下架的mi5

mi5最新消息(在我心中mi5从未下架)(1)

mi5

mi5最新消息(在我心中mi5从未下架)(2)

mi5

mi5最新消息(在我心中mi5从未下架)(3)

mi5

步骤如下

1.进入小米商城(https://www.mi.com/)

mi5最新消息(在我心中mi5从未下架)(4)

1 输入网址https://www.mi.com/

2.点击小米6,注意网址的变化(https://www.mi.com/mi6/)

mi5最新消息(在我心中mi5从未下架)(5)

2 点击小米6

3.将网址https://www.mi.com/mi6/中的6改为5,即可出现小米5的商品详情界面

mi5最新消息(在我心中mi5从未下架)(6)

3 改


规律很简单,其实这个页面一直在小米的服务器上,只是没给出链接。改为mi4、mi3等,依然可以看到小米4和小米3等界面。技术分析

springMVC可以实现这种不带后缀名的访问方式。只需在web.xml中配置springMVC的servlet如下:

mi5最新消息(在我心中mi5从未下架)(7)

配置web.xml

注意:如果你的springMVC.xml中配置了拦截所有请求的拦截器如下:

mi5最新消息(在我心中mi5从未下架)(8)

拦截器配置

那么很不幸这样会拦截所有资源,包括页面必须的静态资源就会404

mi5最新消息(在我心中mi5从未下架)(9)

jQuery包404

解决方法

在web.xml添加如下配置:

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.json</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.png</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.gif</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.jpg</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.jpeg</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.js</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.css</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.html</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.ttf</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.otf</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.woff</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.woff2</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.eot</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.svg</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.swf</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.zip</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>*.xls</url-pattern>

</servlet-mapping>

原因

这些后缀名的文件都走tomcat默认的配置,并不会被过滤器拦截。


,