使用@CrossOrigin實現跨域請求


1.畢設使用的是react+java開發的網上書城,大家都知道react主要是視圖(表現層或頁面),數據的處理還是通過java來實現的,所以我的畢設相當於是兩個項目組成的,一個是前端項目,一個是后台項目,在react中我是用的是fetch來實現數據的異步請求,下面展示用戶注冊的代碼:

    

          fetch('http://localhost:8080/ssm/userController/register', {
                    method: 'POST',
                    headers: {
                        "Content-Type": "application/x-www-form-urlencoded"
                    },
                    body: 'uname=' + uname + '&ubirth=' + ubirth + '&usex=' + usex + '&uaddress=' + uaddress +
                    '&uaccount=' + account + '&upassword=' + password
                })
                    .then(function (response) {
                        return response.json();
                    })
                    .then(function (data) {
                        if (data[0]['code'] == '-1') {
                            message.info('該手機號已經被注冊');
                        } else {
                            hashHistory.push("/login");
                        }
                    })
                    .catch(function (err) {
                        //console.log(err);
                    })

  上面的   http://localhost:8080/ssm/userController/register   是一個url,這個地址是后台的一個action,我們在前端的服務器中要請求Tomcat中的這個action,這就是跨域請求,實現跨域請求的第一步是后台代碼要允許跨域,這里我們最簡單的方法是使用springMVC的注解 @CrossOrigin(origins = "*", maxAge = 3600)  ,這里要強調的是springMVC的版本要在4.2或以上版本才支持@CrossOrigin,我這里的設置是允許所有跨域訪問,也可以單獨指定允許的服務器跨域(設置origin的值便可)。


免責聲明!

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



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