请求数据
看了一些相關的視頻后,想自己嘗試著用angular.js 請求數據,自己寫了一個簡單的前臺請求數據,后臺php返回數據的代碼。
前臺的代碼是這樣的:
向data.php發送一個get請求,成功則打印數據,失敗則打印失敗.
data.php:
簡單的代碼,執行時卻出錯了
去搜了一下,是因為不允許跨域請求數據,需要在被請求的文件上添加跨域許可
在data.php 的頭部添加了 header("Access-Control-Allow-Origin: *"); 表示允許所有跨域請求,數據就成功請求到了
去網上看時,還有一種跨域的方式,叫jsonp,他是根據用<script></script>標簽來請求數據,用<script></script>標簽不會受到瀏覽器的限制
先定義一個回調函數,用來把請求的數據打印
請求的data2.php是這樣寫的:
在瀏覽器請求這個數據后,他會把callBack("phpData")加載進來,就會調用前面定義的函數
但是在以前用后臺做數據請求時,并沒有遇到跨域的問題.
把實例1的允許跨域的頭刪掉,出現報錯:
但是查看網絡的資源請求,發現數據確實是獲取到了
說明服務器接受到了請求并也返回數據了,那為什么還會出錯?
去搜了一下,這是瀏覽器的同源策略,他的目的是為了保證用戶信息的安全,防止惡意的網站竊取數據。所以跨域只在瀏覽器才會有的問題。
總結
- 上一篇: 阿里云PyODPS 0.7.18发布,针
- 下一篇: 调整分区后盘符丢失的资料怎么寻回