JWorld@TW the best professional Java site in Taiwan
      註冊 | 登入 | 全文檢索 | 排行榜  

» JWorld@TW » Web Design 版  

按列印兼容模式列印這個話題 列印話題    把這個話題寄給朋友 寄給朋友    訂閱主題
reply to topicthreaded modego to previous topicgo to next topic
本主題所含的標籤
無標籤
作者 javascript可以對request和response操作麽
wjp1226



發文: 0
積分: 0
於 2003-12-22 09:12 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
如題,javascript可以獲取並對request和response操作麽?

reply to postreply to post
作者 Re:javascript可以對request和response操作麽 [Re:wjp1226]
snpshu

Norman

版主

發文: 1073
積分: 5
於 2003-12-22 09:53 user profilesend a private message to usersend email to snpshureply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
你先找資料看一下 client與server關係就會知道了 Smile

reply to postreply to post
作者 Re:javascript可以對request和response操作麽 [Re:wjp1226]
garbage

以死美工自居



發文: 65
積分: 0
於 2003-12-31 02:49 user profilesend a private message to usersend email to garbagereply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
意思是如同下面這樣嗎?(For IE only.)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<html>
  <head>
    <title>Test Post</title>
    <script type="text/javascript">
      function send(strPost){
        var request = new ActiveXObject("Msxml2.XMLHTTP.4.0");
        request.open("POST", "http://163.13.202.178/garbage_test/test.php", false);
        request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
        request.send(strPost);
        alert(request.responseText);
      }
    </script>
  </head>
  <body>
    <button onclick="send('ID=123&NAME=abc');">submit</button>
  </body>
</html>


garbage edited on 2003-12-31 02:54
reply to postreply to post
【小卷如是( lefthand.24cc.com ):以設計師自許、以死美工自居】
作者 Re:javascript可以對request和response操作麽 [Re:wjp1226]
haloha



發文: 0
積分: 0
於 2004-01-16 02:12 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
javascript對request和response操作有什麼意義?
jsp使用request和response就用jsp處理不是比較好嗎
牽涉到javascript動用到client端,我用linux的netscape等其他瀏覽器
var request = new ActiveXObject("Msxml2.XMLHTTP.4.0");
第一行應該就死掉了!??
不過沒想到javascript可以對request和response操作
garbage 老大請教一下這方面的資訊去哪找


reply to postreply to post
作者 Re:javascript可以對request和response操作麽 [Re:haloha]
garbage

以死美工自居



發文: 65
積分: 0
於 2004-01-16 09:20 user profilesend a private message to usersend email to garbagereply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
haloha wrote:
javascript對request和response操作有什麼意義?
jsp使用request和response就用jsp處理不是比較好嗎
牽涉到javascript動用到client端,我用linux的netscape等其他瀏覽器
var request = new ActiveXObject("Msxml2.XMLHTTP.4.0");
第一行應該就死掉了!??
不過沒想到javascript可以對request和response操作
garbage 老大請教一下這方面的資訊去哪找


Musical Note 不就說了只有IE能用嗎?
至於Scripting操作Request有什麼用...
微軟設計這個功能是為了讓Scripting能夠傳送soap封包,使用web service,
這一部分的東西應該已經導入.Net 系列的產品中了。

用JSP來控制跟在Client端控制談的完全是兩種不同的應用範圍...
基本上,以JSP來講,他控制的是伺服端該回覆(Response)什麼,
但請求(Request)時機則由Client端決定。

而通常,Client端何時送請求,
多半是由使用者自行決定(按下button的點選動作),
也有少部分是用Scripting來模擬表單請求。

我上面引用的做法,跟一般用Scripting來模擬表單的作法不同的是,
透過form來送出請求,會導致瀏覽器進入等待伺服器回應而中斷瀏覽,
直到接受到回應後,才顯示回應的東西。
而上述做法(繞個彎來POST),則可以讓使用者送出請求後,
繼續在同一個頁面作其他動作,
瀏覽器會另開一個程序(搞不好是執行緒,我不清楚)去等伺服器回應...

所以,兩者的意義是相當不同的!
正確的觀念而言,通常伺服端是用來收Request而後作Response...
(也不能講說是JSP在做的...)
而上述Client端Scripting則是用來送Request而後收Response的...
所以兩者在處理Request跟Response上面根本是兩回事...

這做法造成的便利性,可以作為不同個案的考量之一,
某些時候,Client端是否能夠讓所有瀏覽器正確顯示,
還不如加強介面親和力來得重要...

如果你的瀏覽端反正就是用IE,那就儘管用吧!
至於其他瀏覽器,我可以給你擔保,絕大部分是跑不動的!

PS. 那些M$的資料都可以在M$DN找到,
至於用這個ActiveX來送POST,
是我因個人需要自己試出來的(還得參考幾份規格書,
HTTP協定和RFC文件),
本來人家是設計來送XML文件到Server的,
我這算給他大才小用啦!


garbage edited on 2004-01-16 09:30
reply to postreply to post
【小卷如是( lefthand.24cc.com ):以設計師自許、以死美工自居】
作者 Re:javascript可以對request和response操作麽 [Re:garbage]
zanta





發文: 78
積分: 4
於 2004-04-14 17:54 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
唔,對於 response 來說,好像沒有什麼好的 idea 來實作
不過對於 request 來看,如果只要處理 get 的話,倒是有一個方式,大家湊合著用用看囉...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<script language="JavaScript">
 
var queryString = location.search.replace("?", "");
var queryPair = new Array();    //存放 key 值的陣列
var valuePair = new Array();    // 存放 value 的陣列
 
var tmpQuery = queryString.split("&");
var tmpValue = new Array();
var count = (queryString.length > 0) ? tmpQuery.length : 0;
 
for (var i=0; i<count; i++)
{
    tmpValue = tmpQuery[i].split("=");
    queryPair[i] = tmpValue[0];
    valuePair[i] = unescape(tmpValue[1]);
 
    document.write("<li>" + queryPair[i] + " = " + valuePair[i]);
}
</script>


請存成 *.htm 或 *.html 執行
若要取出 user 所傳遞的資料,請存取 queryPair 陣列;取出 value 則存取 valuePair 陣列。

不過,剛剛測試時發現一個奇怪的問題
如果在網址列輸入實體路徑 (如:D:\Temp\Query.htm?aaa=123&bbb=456) 就只能找到第一個參數
但若轉為 file:///D:/Temp/Query.htm?aaa=123&bbb=456,或是發佈到 Web Server 上就可以正常找到...
也就是執行上述程式時必須要輸入網址才行;這個問題我倒是解不出來,還盼大家幫忙了...小弟先謝過...


zanta edited on 2004-04-16 13:48
reply to postreply to post
作者 Re:javascript可以對request和response操作麽 [Re:zanta]
AdaHsu





發文: 25
積分: 0
於 2004-06-08 10:39 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
zanta wrote:
不過,剛剛測試時發現一個奇怪的問題
如果在網址列輸入實體路徑 (如:D:\Temp\Query.htm?aaa=123&bbb=456) 就只能找到第一個參數
但若轉為 file:///D:/Temp/Query.htm?aaa=123&bbb=456,或是發佈到 Web Server 上就可以正常找到...
也就是執行上述程式時必須要輸入網址才行;這個問題我倒是解不出來,還盼大家幫忙了...小弟先謝過...


大概是因為輸入實體路徑時,Browser 認為 "?" 之後接的資料仍然是某個檔案名稱的一部份,所以將 & 符號被轉譯成 %26 的關係而造成的吧!

若是 URL 則 Browser 不會對 & 符號做額外處理,除非該符號是資料中的一部份!


reply to postreply to post
» JWorld@TW »  Web Design 版

reply to topicthreaded modego to previous topicgo to next topic
  已讀文章
  新的文章
  被刪除的文章
Jump to the top of page

JWorld@TW 本站商標資訊

Powered by Powerful JuteForum® Version Jute 1.5.8