Vue前台,跨域請求報錯“Response to preflight request doesn't pass access control check”


 
 

 背景:

       在寫一個簡單的頁面,但是請求后台的時候,post請求一直發送的是option請求。之前一直在查這個問題。其實這個問題不算是一個問題。axios的http請求是會先發送option請求的。后來轉換了下思路。發現控制台也報錯。報錯信息如下:

 

 原來是跨域了。那就先解決這個問題吧

一 、在網上查到一種解決辦法,就是設置response的header 。但是這個方法不行。他們給的解決方法如下

 

response.setHeader("Access-Control-Allow-Origin", "http://127.0.0.1:8080/");
 response.setHeader("Access-Control-Allow-Credentials", "true");
 response.setHeader("Access-Control-Allow-Headers", "Content-Type,X-Requested-With");

 

 

二 、真正靠譜的方法其實就是在請求的方法上或者類上加一個springboot注解 @CrossOrigin就好了。就像這樣:

  @CrossOrigin
    @RequestMapping(value = "/newProjectTest",method = RequestMethod.POST)
    public  String login( HttpServletResponse response, @RequestBody(required = false) String newTest){

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM