blog.Ring.idv.tw

Articles

跨網域請求(二) - Flash Plug-In

本文接續著「跨網域請求(一) - Cross-Domain Script Tag」來繼續實作另一種透過Flash Plug-In的作法~

這種作法最大的缺點就是需要仰賴一個Plug-In的方式~

但隨著Flash Player Statistics所統計全世界可上網的電腦有安裝Flash Player就達到98.8%~ 所以此缺點看似影響並非太大~ 端看客官們如何取捨~

下述範例「flash.php」、「crossdomain.xml」須放在同一個網域之下

flash.php

<div><?=rand()+rand()?></div>

crossdomain.xml

這個「crossdomain.xml」須放置在根目錄下

<?xml version="1.0"?>
<cross-domain-policy>
   <allow-access-from domain="*" />
</cross-domain-policy>

ActionScript 3

這裡的ActionScript範例會執行外部的資源請求,並將請求所得到的值利用ExternalInterface呼叫「callJS()」的JavaScript,有興趣的人玩玩看吧~

var loader:URLLoader = new URLLoader();
sendRequest();
function sendRequest():void
{
	var request:URLRequest = new URLRequest("http://163.17.142.204/csproxy/flash.php?"+Math.random());
	request.method = URLRequestMethod.GET;

	loader.dataFormat = URLLoaderDataFormat.TEXT;
	loader.addEventListener(Event.COMPLETE, loader_complete);
	loader.load(request);
}
function loader_complete(e:Event):void
{
	var example:RegExp = new RegExp(/<div>(.*)<\/div>/);
	var trans = example.exec(loader.data);
	ExternalInterface.call("callJS",trans[1]);	
}

JavaScript

function callJS(result)
{
	alert(result);	
}

2008-03-29 01:32:32 | Add Comment

跨網域請求(一) - Cross-Domain Script Tag

由於目前絕大多數的瀏覽器都套用same origin policy的安全性限制~

所以如果我們必須在兩個不同網域的情況下,並向另一個網域上的資源做請求,那就要透過一些額外的方法來達成~

底下要介紹的就是「Cross-Domain Script Tag」的方式~ 其實這種方式若結合JSON(JavaScript Object Notation)的話,在應用上就會蠻方便的~

下述範例請將「script.php」、「script.html」放置在兩個不同網域下做測試~

然後執行「script.html」就可以看到結果了~

script.php

var a = <?=rand()?>;
var b = <?=rand()?>;
calculate();

script.html

<html>
<head>
<title>Cross Domain <Script> Tag</title>
<script>
function getScript(url)
{
	var s = document.createElement('SCRIPT');
	s.src = url;
	document.body.appendChild(s);
}
function calculate()
{
	alert(a+b);
}
</script>
</head>
<body>
<script>
getScript("http://163.17.142.204/csproxy/script.php");
</script>
</body>
</html>

2008-03-28 23:23:43 | Comments (1)

今天偷得半日閒...

今天下午本來打算一併將我那些都過期的機車、汽車、行照、機車保險等證件,全部一次解決的~

結果... 因為一些原因導致一件都沒處理好~ 就這樣.. 禮拜四又要再去一趟 XD~

不過也因為這樣~ 下午就和親愛的妹妹去SOGO敗家~ ^^a 應該也不算啦~ 我只買了三件上衣、一件短褲~ 算是為了夏天的天氣來鋪路一下 呵~

結果她居然也和我一起買... 不過是要買來送給他男友的~ 呃~ 果然是要刺激我的= ="

P.S. 好像有一件LEE 1&1/2 Jeans還沒入手 XDDD~ (穿起來蠻舒適的唷!)

2008-03-24 22:42:33 | Add Comment

B兔G - iLove 我要我們宅一起

號角響起~ 叭~ 叭~ 叭叭叭~

今年我將再參加一次「2008 中華電信加值大賽」~ 這次我們的隊伍叫「B兔G」~ 因為組員有四個人~ 是由兩個男生和兩個女生所組成的~ 所以稱「B兔G」^^V

不過這次我要參加的組別是「網路社群平台發展組」~ 因為我們已經有一個Killer Application的構想~ 嘻~ 拭目以待嚕! ^^

而我們的主題也出爐了~ 這次的題目為「iLove 我要我們宅一起」~ 希望這次結合跨校合作並加上前兩屆都有得過名次的組員們~ 一同來爭取最高的榮譽 ^^V GoGoGo~

我要發揮百分之一千的戰鬥力 V^^V 衝呀...

2008-03-23 21:31:46 | Comments (5)

Purdue University: Principles of Interactive and Dynamic Media

Kellen R. Maicher .上圖這位是目前在Purdue University擔任「Department of Computer Graphics Technology」助理教授一職的老師,它專攻「Interactive Multimedia」~

剛剛不小心找到它們課程的網站:CGT 353: Principles of Interactive and Dynamic Media 中譯或許可以說成「動態媒體與互動的原理」XD~ 這不是重點~

重點在於~ 他們的課程完全使用「Flash」和「ActionScript 3.0」來教學~ 我的第一個感覺是~ 貴校果然是走在時代的尖端~ 跟上時代的腳步~ 尤其是課程內容的安排~ 感覺上就很紮紮實實地~ 值得借鏡與效法~

2008-03-21 18:20:37 | Comments (2)

Next Posts~:::~Previous Posts
Copyright (C) Ching-Shen Chen. All rights reserved.

::: 搜尋 :::

::: 分類 :::

::: 最新文章 :::

::: 最新回應 :::

::: 訂閱 :::

Atom feed
Atom Comment