iT邦幫忙

16

JavaScript如何在不同網站之間傳遞資料

  • 分享至 

  • xImage
  •  

由於JavaScript有同個域名的限制,無法跨網站傳遞資料,因此要突破這個限制,就得另闢蹊徑。
利用Dom方法操作動態JS腳本請求來做這件事。

<pre class="html" name="code">
    //建立一個script節點
    var oScript = document.createElement('script');

    //script的src可以指向非同一網域的動態script程式,並且可帶查詢參數

    oScript.src = "http://yyy.com/query.php?"+yourQueryString;    

    //並可指定charset
          
    oScript.charset = "utf-8";

    //透過Dom操作把新節點加入到檔案中

    document.getElementsByTagName("head")[0].appendChild(oScript);

只要query.php的輸出是可執行的javaScript,比如:djsCallBack({jsondata});
當他從伺服器返回後就會自動執行,就可用json做資料傳遞了。

腳本請求最好帶上時間戳記,避免瀏覽器cahce造成取回非即時性的資料。

另外,可以要求資料索取者在查詢參數中提供回呼函數名,比如query.php?callback=myDataHandler&key=...?
這樣就可以根據參數提供不同的myDataHandler({jsondata}),增加資料查詢的多元性。


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
5min
iT邦好手 3 級 ‧ 2008-04-20 17:07:32

謝謝分享

0
john651216
iT邦研究生 1 級 ‧ 2008-04-23 17:16:08

謝謝分享

0
海綿寶寶
iT邦大神 1 級 ‧ 2008-04-24 18:54:35

分享自己的心得,應該多推一下

0
tgunlu
iT邦研究生 1 級 ‧ 2008-04-25 06:53:48

謝謝分享

0
fanylu60
iT邦研究生 1 級 ‧ 2008-04-25 10:20:13

感謝提供分享

0
yce701116
iT邦研究生 1 級 ‧ 2008-04-25 17:37:01

感謝分享資訊

0
tyc1220
iT邦研究生 1 級 ‧ 2008-05-18 00:23:38

謝謝分享

0
bigmotor
iT邦研究生 5 級 ‧ 2008-07-19 23:27:57

謝謝分享

0
jamesjan
iT邦高手 1 級 ‧ 2008-08-16 09:02:38

That's a good point.

0

有幫助,謝謝分享咯!

我要留言

立即登入留言