台灣最大程式設計社群網站
線上人數
1550
 
會員總數:243455
討論主題:188176
歡迎您免費加入會員
討論區列表 >> AJAX / JSON / jQuery >> 抓取外部XML至指定網頁
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
抓取外部XML至指定網頁
價值 : 60 QP  點閱數:93 回應數:6

樓主

YEN
門外漢
0 1
18 3
發送站內信

請問要如透過網址,抓取XML或JSON資料?

我把資料存成XML檔,放同一根目,網頁就抓的到,但改為網址就抓不到

(使用的網址是中央氣象局提供 https://opendata.cwb.gov.tw/api/v1/rest/datastore/F-C0032-001?Authorization=CWB-37A3BB7D-F89C-4BF1-B324-065B45CE2FA7&format=XML)

請問是為什麼?

完整程式碼----


搜尋相關Tags的文章: [ XML ] ,
本篇文章發表於2018-11-09 23:54
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

淺水員
檢舉此回應
瀏覽器因為受同源政策的影響
如果對方的伺服器回傳過來的內容沒有加
Access-Control-Allow-Origin 的檔頭
或是該檔頭不包含您的域名
就無法透過客戶端直接去抓它的資料
不過還是可以透過伺服器端去抓資料後回傳給客戶端
本篇文章回覆於2018-11-10 00:55
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

YEN
檢舉此回應
感謝淺水員大大回復

那麼要如何透過伺服器端去抓

我爬了很多文都沒有教
本篇文章回覆於2018-11-10 20:50
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
最有價值解答

淺水員
檢舉此回應
這要看你後端用什麼語言了
也許你搜尋時可以:「語言名稱 send get request」
(如果是 PHP 我習慣用 curl 處理)
本篇文章回覆於2018-11-10 21:53
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

YEN
檢舉此回應
剛剛爬文爬了很久

發現只要將跨網域套件擴充至瀏覽器就可以了!

Allow-Control-Allow-Origin: *

再次感謝淺水員大大的意見

參考https://ezoapp.gitbooks.io/ezoapp-tutorials/chapter15/
本篇文章回覆於2018-11-11 00:16
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

淺水員
檢舉此回應
幫忙補充:

透過瀏覽器安裝 extension
以達到沒有 Allow-Control-Allow-Origin 檔頭仍可瀏覽
如果只是自己用沒問題

如果網頁要讓其他使用者看的話
那麼很難要求所有使用者都裝擴充套件
本篇文章回覆於2018-11-11 01:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

YEN
檢舉此回應
我也想到這個問題了

所以還是必須要從server端抓阿∼

感謝大大回復 我繼續研究

本篇文章回覆於2018-11-11 20:02
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.