SpringMVC出現406錯誤的解決辦法
阿新 • • 發佈:2019-01-22
1.因為spring 3.x(具體哪個版本忘記了)開始,對request裡的header 中的accept(也就是mimetype)進行了識別,如果你指定了攔截字尾,比如你原先的.html,那麼不管你是ajax還是平常的頁面訪問,都會當作text/html處理,而你通過ajax訪問並不是text/html,而是application/json(可能是類似的),於是spring mvc給你報了個406錯誤。
2.為此你需要引入Jackson-Annotations-2.4.6.jar,Jackson-core-2.4.6.jar,Jackson-databind-2.4.6.jar三個jar包,這樣在使用@ResponseBody註解時才會自動幫你打包成json格式。
3.maven pom.xml引入地址:
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version> 2.4.6</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId >
<version>2.4.6</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-annotations -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.4.6</version>
</dependency>