整合營(yíng)銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          vue基礎(chǔ)之使用get、post、jsonp實(shí)現(xiàn)交互

          vue基礎(chǔ)之使用get、post、jsonp實(shí)現(xiàn)交互功能示例

          、如果vue想做交互,引入: vue-resouce

          二、get方式

          1、get獲取一個(gè)普通文本數(shù)據(jù):

          <!DOCTYPE html>
          <html lang="en">
          <head>
           <meta charset="UTF-8">
           <title></title>
           <style>
           </style>
           <script src="vue.js"></script>
           <script src="vue-resource.js"></script>
           <script>
           window.onload=function(){
           new Vue({
           el:'body',
           data:{
           },
           methods:{
           get:function(){
           this.$http.get('a.txt').then(function(res){
           alert(res.status);//成功
           alert(res.data);
           },function(res){
           alert(res.status);//失敗返回
           alert(res.data);
           });
           }
           }
           });
           };
           </script>
          </head>
          <body>
           <input type="button" value="按鈕" @click="get()">
          </body>
          </html>
          

          2、get給服務(wù)發(fā)送數(shù)據(jù):

          <!DOCTYPE html>
          <html lang="en">
          <head>
           <meta charset="UTF-8">
           <title></title>
           <style>
           </style>
           <script src="vue.js"></script>
           <script src="vue-resource.js"></script>
           <script>
           window.onload=function(){
           new Vue({
           el:'body',
           data:{
           },
           methods:{
           get:function(){
           this.$http.get('get.php',{
           a:1,
           b:2
           }).then(function(res){
           alert(res.data);
           },function(res){
           alert(res.status);
           });
           }
           }
           });
           };
           </script>
          </head>
          <body>
           <input type="button" value="按鈕" @click="get()">
          </body>
          </html>
          

          三、post方式

          <!DOCTYPE html>
          <html lang="en">
          <head>
           <meta charset="UTF-8">
           <title></title>
           <style>
           </style>
           <script src="vue.js"></script>
           <script src="vue-resource.js"></script>
           <script>
           window.onload=function(){
           new Vue({
           el:'body',
           data:{
           },
           methods:{
           get:function(){
           this.$http.post('post.php',{
           a:1,
           b:20
           },{
           emulateJSON:true
           }).then(function(res){
           alert(res.data);
           },function(res){
           alert(res.status);
           });
           }
           }
           });
           };
           </script>
          </head>
          <body>
           <input type="button" value="按鈕" @click="get()">
          </body>
          </html>
          

          四、jsonp方式

          獲取百度接口



          查看響應(yīng)數(shù)據(jù)



          jsonp請(qǐng)求百度接口

          <!DOCTYPE html>
          <html lang="en">
          <head>
           <meta charset="UTF-8">
           <title></title>
           <style>
           </style>
           <script src="vue.js"></script>
           <script src="vue-resource.js"></script>
           <script>
           window.onload=function(){
           new Vue({
           el:'body',
           data:{
           },
           methods:{
           get:function(){
           this.$http.jsonp('https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su',{
           wd:'a'
           },{
           jsonp:'cb'//回調(diào)函數(shù)名稱
           }).then(function(res){
           alert(res.data.s);
           },function(res){
           alert(res.status);
           });
           }
           }
           });
           };
           </script>
          </head>
          <body>
           <input type="button" value="按鈕" @click="get()">
          </body>
          </html>
          

          jsonp請(qǐng)求360接口

          <!DOCTYPE html>
          <html lang="en">
          <head>
           <meta charset="UTF-8">
           <title></title>
           <style>
           </style>
           <script src="vue.js"></script>
           <script src="vue-resource.js"></script>
           <script>
           window.onload=function(){
           new Vue({
           el:'body',
           data:{
           },
           methods:{
           get:function(){
           this.$http.jsonp('https://sug.so.360.cn/suggest',{
           word:'a'
           }).then(function(res){
           alert(res.data.s);
           },function(res){
           alert(res.status);
           });
           }
           }
           });
           };
           </script>
          </head>
          <body>
           <input type="button" value="按鈕" @click="get()">
          </body>
          </html>
          

          最后

          以下是總結(jié)出來(lái)最全前端框架視頻,包含: javascript/vue/react/angualrde/express/koa/webpack 等學(xué)習(xí)資料。

          【領(lǐng)取方式】

          關(guān)注頭條 前端全棧架構(gòu)丶第一時(shí)間獲取最新前端資訊學(xué)習(xí)

          手機(jī)用戶可私信關(guān)鍵詞 【前端】即可獲取全棧工程師路線和學(xué)習(xí)資料!

          單的工作過(guò)程

          表單的信息發(fā)送與處理過(guò)程可以簡(jiǎn)單的進(jìn)行圖示,如下圖。

          以注冊(cè)會(huì)員為例,用戶在自己的電腦上打開(kāi)相應(yīng)的注冊(cè)表單頁(yè)面填寫信息,完成填寫后點(diǎn)擊提交按鈕,也就是圖中1所示過(guò)程。

          這時(shí)瀏覽器會(huì)將這些信息發(fā)送給處理這些信息的服務(wù)器,服務(wù)器上有使用類似asp或php寫成的相應(yīng)的處理程序,處理完成后,生成一個(gè)反饋信息,也就是2到3的過(guò)程。

          然后服務(wù)器將處理后的信息發(fā)送給個(gè)人電腦,個(gè)人電腦在瀏覽器上通過(guò)一個(gè)新頁(yè)面來(lái)提示用戶處理結(jié)果。

          這里就涉及到一個(gè)問(wèn)題,一個(gè)網(wǎng)站會(huì)有針對(duì)不同用戶的信息注冊(cè)表單以及相應(yīng)的信息處理程序,比如我們注冊(cè)頭條號(hào)就有"個(gè)人"、"企業(yè)"、"媒體"和"國(guó)家機(jī)構(gòu)"的區(qū)分。如何使不同的表單找到相應(yīng)的處理程序呢?在<form>標(biāo)簽中,有一個(gè)action屬性就是為這個(gè)表單信息指定處理程序的。

          <form>中的action屬性

          調(diào)用程序

          <form>的action屬性實(shí)際上就是為表單提示處理程序所在的路徑,如果程序和頁(yè)面在一個(gè)服務(wù)器中存儲(chǔ),那使用相對(duì)路徑即可,如果在其他服務(wù)器,則要使用絕對(duì)路徑。示例代碼如下:

          <form action="form_action.asp" method="get">
          <p>First name: <input type="text" name="fname" /></p> 
          <p>Last name: <input type="text" name="lname" /></p> 
          <input type="submit" value="Submit" />
          </form>

          這段代碼中的"form_action.asp"程序和這個(gè)表單頁(yè)面在一個(gè)文件夾中,故直接寫名稱即可調(diào)用。

          發(fā)送郵件

          action屬性除了調(diào)用程序外,也可以發(fā)送郵件,示例代碼如下:

          <form action="MAILTO:someone@w3school.com.cn" method="post" enctype="text/plain">
          <h3>這個(gè)表單會(huì)把電子郵件發(fā)送到 W3School。</h3>
          姓名:<br />
          <input type="text" name="name" value="yourname" size="20"><br />
          電郵:<br /><input type="text" name="mail" value="yourmail" size="20"><br />
          內(nèi)容:<br /><input type="text" name="comment" value="yourcomment" size="40"><br /><br />
          <input type="submit" value="發(fā)送">
          <input type="reset" value="重置">
          </form>

          這段代碼中。發(fā)送郵件的寫法是這樣的:action="MAILTO:someone@w3school.com.cn",通過(guò)MAILTO:告訴瀏覽器,這里要發(fā)送郵件!然后輸入相應(yīng)的郵箱地址,這樣就會(huì)把表單中的信息以郵件的形式發(fā)送到相應(yīng)的郵箱中了。

          大家可以把郵箱地址改成自己的郵箱試一下,瀏覽器會(huì)讓大家選擇發(fā)送郵件的程序。如圖所示:

          使用這個(gè)功能我們可以寫一個(gè)簡(jiǎn)單的郵件發(fā)送頁(yè)面,示例代碼如下:

          <form action="mailto:yourname@domain.com" method="post" enctype="text/plain">
          主題:<input name="subject" type="text"><br>
          抄送:<input name="cc" type="text"><br>
          密送:<input name="bcc" type="text"><br>
          正文:<textarea name="body"></textarea><br>
          <input type="submit">
          </form>

          這樣的寫法大家可能會(huì)發(fā)現(xiàn)問(wèn)題,即如果一個(gè)網(wǎng)站注冊(cè)用戶超過(guò)100人以后,靠這種手動(dòng)輸入用戶郵箱的方法發(fā)送郵件簡(jiǎn)直就是折磨人啊!

          實(shí)際上,在網(wǎng)站中,我們會(huì)把會(huì)員或注冊(cè)用戶的郵箱存在數(shù)據(jù)庫(kù)中,通過(guò)調(diào)用數(shù)據(jù)庫(kù)中的用戶郵箱的程序語(yǔ)句來(lái)替換action中的具體郵箱地址即可,再通過(guò)程序,可以針對(duì)全部用戶或部分用戶進(jìn)行群發(fā)信息。

          其中,enctype屬性是向服務(wù)器聲明上傳信息的形式,也就是向服務(wù)器說(shuō)明發(fā)送的數(shù)據(jù)到底是數(shù)字還是英文還是中文還是編程語(yǔ)句。專業(yè)一些的說(shuō)法是"規(guī)定在發(fā)送表單數(shù)據(jù)之前如何對(duì)其進(jìn)行編碼。"

          全部屬性值有三個(gè),如圖所示,大家可以簡(jiǎn)要理解一下。

          除此之外,我們還發(fā)現(xiàn)一個(gè)屬性叫做method(方法),通過(guò)上面的示例代碼可知,method屬性有兩個(gè)屬性值,一個(gè)是get一個(gè)是post,這是什么意思呢?

          信息上傳的兩種方法

          <form>中的method標(biāo)簽即為表單信息指定相應(yīng)的發(fā)送方法。

          方法有兩種,一種叫g(shù)et,這種方法通常用來(lái)發(fā)送簡(jiǎn)短的且低安全要求的信息,特點(diǎn)是速度比較快。

          post經(jīng)常用來(lái)發(fā)送體積較大的信息,如果發(fā)送一些對(duì)安全性要求高的信息,html的官方說(shuō)明中建議使用post方法。

          我個(gè)人認(rèn)為,現(xiàn)階段大家能記住這兩個(gè)方法的主要特點(diǎn)即可。這一篇的內(nèi)容實(shí)際上也是前端學(xué)習(xí)者對(duì)服務(wù)器端的運(yùn)行的了解內(nèi)容。

          下面為大家附上更為專業(yè)的講解,看不懂也沒(méi)關(guān)系,盡量讀,至少能被專業(yè)詞匯洗禮一下!

          method 屬性

          瀏覽器使用 method 屬性設(shè)置的方法將表單中的數(shù)據(jù)傳送給服務(wù)器進(jìn)行處理。共有兩種方法:POST 方法和 GET 方法。

          如果采用 POST 方法,瀏覽器將會(huì)按照下面兩步來(lái)發(fā)送數(shù)據(jù)。首先,瀏覽器將與 action 屬性中指定的表單處理服務(wù)器建立聯(lián)系,一旦建立連接之后,瀏覽器就會(huì)按分段傳輸?shù)姆椒▽?shù)據(jù)發(fā)送給服務(wù)器。

          在服務(wù)器端,一旦 POST 樣式的應(yīng)用程序開(kāi)始執(zhí)行時(shí),就應(yīng)該從一個(gè)標(biāo)志位置讀取參數(shù),而一旦讀到參數(shù),在應(yīng)用程序能夠使用這些表單值以前,必須對(duì)這些參數(shù)進(jìn)行解碼。用戶特定的服務(wù)器會(huì)明確指定應(yīng)用程序應(yīng)該如何接受這些參數(shù)。

          另一種情況是采用 GET 方法,這時(shí)瀏覽器會(huì)與表單處理服務(wù)器建立連接,然后直接在一個(gè)傳輸步驟中發(fā)送所有的表單數(shù)據(jù):瀏覽器會(huì)將數(shù)據(jù)直接附在表單的 action URL 之后。這兩者之間用問(wèn)號(hào)進(jìn)行分隔。

          一般瀏覽器通過(guò)上述任何一種方法都可以傳輸表單信息,而有些服務(wù)器只接受其中一種方法提供的數(shù)據(jù)。可以在 <form> 標(biāo)簽的 method (方法)屬性中指明表單處理服務(wù)器要用方法來(lái)處理數(shù)據(jù),使 POST 還是 GET。

          POST 還是 GET?

          如果表單處理服務(wù)器既支持 POST 方法又支持 GET 方法,那么你該選擇哪種方法呢?下面是有關(guān)這方面的一些規(guī)律:

          如果希望獲得最佳表單傳輸性能,可以采用 GET 方法發(fā)送只有少數(shù)簡(jiǎn)短字段的小表單。

          一些服務(wù)器操作系統(tǒng)在處理可以立即傳遞給應(yīng)用程序的命令行參數(shù)時(shí),會(huì)限制其數(shù)目和長(zhǎng)度,在這種情況下,對(duì)那些有許多字段或是很長(zhǎng)的文本域的表單來(lái)說(shuō),就應(yīng)該采用 POST 方法來(lái)發(fā)送。

          如果你在編寫服務(wù)器端的表單處理應(yīng)用程序方面經(jīng)驗(yàn)不足,應(yīng)該選擇 GET 方法。如果采用 POST 方法,就要在讀取和解碼方法做些額外的工作,也許這并不很難,但是也許你不太愿意去處理這些問(wèn)題。

          如果安全性是個(gè)問(wèn)題,那么我們建議選用 POST 方法。GET 方法將表單參數(shù)直接放在應(yīng)用程序的 URL 中,這樣網(wǎng)絡(luò)窺探者可以很輕松地捕獲它們,還可以從服務(wù)器的日志文件中進(jìn)行摘錄。如果參數(shù)中包含了信用卡帳號(hào)這樣的敏感信息,就會(huì)在不知不覺(jué)中危及用戶的安全。而 POST 應(yīng)用程序就沒(méi)有安全方面的漏洞,在將參數(shù)作為單獨(dú)的事務(wù)傳輸給服務(wù)器進(jìn)行處理時(shí),至少還可以采用加密的方法。

          如果想在表單之外調(diào)用服務(wù)器端的應(yīng)用程序,而且包括向其傳遞參數(shù)的過(guò)程,就要采用 GET 方法,因?yàn)樵摲椒ㄔ试S把表單這樣的參數(shù)包括進(jìn)來(lái)作為 URL 的一部分。而另一方面,使用 POST 樣式的應(yīng)用程序卻希望在 URL 后還能有一個(gè)來(lái)自瀏覽器額外的傳輸過(guò)程,其中傳輸?shù)膬?nèi)容不能作為傳統(tǒng) <a> 標(biāo)簽的內(nèi)容。

          以上內(nèi)容來(lái)自W3school

          今天的內(nèi)容結(jié)束了,這一篇內(nèi)容實(shí)踐的東西比較少,主要是閱讀與了解。

          至此,HTML表單部分的講解就算告于段落了,如果您有任何疑問(wèn)請(qǐng)給我留言,如有問(wèn)題或錯(cuò)誤請(qǐng)予以斧正!

          如果您喜歡我的教程請(qǐng)關(guān)注我,點(diǎn)贊也能讓我充滿動(dòng)力!

          HTML完整學(xué)習(xí)目錄

          HTML序章(學(xué)習(xí)目的、對(duì)象、基本概念)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML是什么?——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          第一個(gè)HTML頁(yè)面如何寫?——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML頁(yè)面中head標(biāo)簽有啥用?——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          初識(shí)meta標(biāo)簽與SEO——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML中的元素使用方法1——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML中的元素使用方法2——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML元素中的屬性1——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML元素中的屬性2(路徑詳解)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          使用HTML添加表格1(基本元素)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          使用HTML添加表格2(表格頭部與腳部)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          使用HTML添加表格3(間距與顏色)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          使用HTML添加表格4(行顏色與表格嵌套)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          16進(jìn)制顏色表示與RGB色彩模型——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML中的塊級(jí)元素與內(nèi)聯(lián)元素——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          初識(shí)HTML中的<div>塊元素——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          在HTML頁(yè)面中嵌入其他頁(yè)面的方法——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          封閉在家學(xué)網(wǎng)頁(yè)制作!為頁(yè)面嵌入PDF文件——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML表單元素初識(shí)1——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML表單元素初識(shí)2——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML表單3(下拉列表、多行文字輸入)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML表單4(form的action、method屬性)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML列表制作講解——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          為HTML頁(yè)面添加視頻、音頻的方法——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          音視頻格式轉(zhuǎn)換神器與html視頻元素加字幕——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML中使用<a>標(biāo)簽實(shí)現(xiàn)文本內(nèi)鏈接——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          sp中四種傳遞參數(shù)的方法,我覺(jué)得總結(jié)一下,挺好的,以備后用!

          1、form表單

          2、request.setAttribute();和request.getAttribute();

          3、超鏈接:<a herf="index.jsp"?a=a&b=b&c=c>name</a>

          1、form表單

          form.jsp:

          <%@page contentType="text/html; charset=GB2312"%> 
          <html> 
           <head> 
           <title> 
           form.jsp file 
           </title> 
           </head> 
           
           <body style="background-color:lightblue"> 
           
           <h2 style="font-family:arial;color:red;font-size:25px;text-align:center">登錄頁(yè)面</h2> 
           
           <form action="result.jsp" method="get" align="center"> 
           姓名:<input type="text" name="name" size="20" value="" maxlength="20"><br/> 
           
           密碼:<input type="password" name="password" size="20" value="" maxlength="20"><br/> 
           
           <!--在愛(ài)好前空一個(gè)空格,是為了排版好看些--> 
           
           愛(ài)好:<input type="checkbox" name="hobby" value="唱歌">唱歌 
           <input type="checkbox" name="hobby" value="足球">足球 
           <input type="checkbox" name="hobby" value="籃球">籃球<br/><br/> 
           
           <input type="submit" name="submit" value="登錄"> 
           <input type="reset" name="reset" value="重置"><br/> 
           </form> 
           
           </body> 
          </html>
          

          result.jsp:

           1 <%@page language="java" import="java.util.*" pageEncoding="GB2312"%> 
           2 <html> 
           3 <head> 
           4 <title> 
           5 result.jsp file 
           6 </title> 
           7 </head> 
           8 
           9 <body bgcolor="ffffff"> 
          10 <% 
          11 request.setCharacterEncoding("GB2312"); 
          12 
          13 String name=request.getParameter("name"); 
          14 name=new String(name.getBytes("iso-8859-1"),"GB2312"); 
          15 
          16 String pwd=request.getParameter("password"); 
          17 String[] hobby=request.getParameterValues("hobby");//注意這里的函數(shù)是getParameterValues()接受一個(gè)數(shù)組的數(shù)據(jù) 
          18 
          19 %> 
          20 
          21 <% 
          22 if(!name.equals("") && !pwd.equals("")) 
          23 { 
          24 %> 
          25 
          26 您好!登錄成功!<br/> 
          27 姓名:<%=name%><br/> 
          28 密碼:<%=pwd%><br/> 
          29 愛(ài)好:<% 
          30 for(String ho: hobby) 
          31 { 
          32 ho=new String(ho.getBytes("iso-8859-1"),"GB2312"); 
          33 out.print(ho+" "); 
          34 } 
          35 %> 
          36 <% 
          37 } 
          38 else 
          39 { 
          40 %> 
          41 請(qǐng)輸入姓名或密碼! 
          42 <% 
          43 } 
          44 %> 
          45 </body> 
          46 </html>
          

          注意:form表單的提交方式為get,在參數(shù)傳遞時(shí)會(huì)遇到中文亂碼的問(wèn)題,一個(gè)簡(jiǎn)單的解決方法是,將接受到的字符串先轉(zhuǎn)換成一個(gè)byte數(shù)組,再用String構(gòu)造一個(gè)新的編碼格式的String,如:

          1 String name=request.getParameter("name"); 
          2 name=new String(name.getBytes("iso-8859-1"),"GB2312"); 
          

          如果form表單的提交方式為post,解決亂碼問(wèn)題的簡(jiǎn)單辦法是,使用 request.setCharacterEncoding("GB2312");設(shè)置request的編碼方式。

          為什么會(huì)出現(xiàn)中文亂碼問(wèn)題呢?因?yàn)門omcat服務(wù)器默認(rèn)的系統(tǒng)編碼方式為iso- 8859-1,你傳遞參數(shù)給服務(wù)器時(shí),使用的是默認(rèn)的iso-8859-1的編碼方式,但是服務(wù)器向你返回信息時(shí),是按page指令中設(shè)置的編碼方式, 如:<%@page language="java" import="java.util.*" pageEncoding="GB2312"%>,這樣就混合了兩種編碼方式,所以會(huì)出現(xiàn)亂碼,所以解決之道就是統(tǒng)一傳遞和接收的編碼方式。

          2、request.setAttribute()和request.getAttribute()

          set.jsp:

          <%@page contentType="text/html; charset=GB2312"%> 
          <html> 
           <head> 
           <title> 
           set.jsp file 
           </title> 
           </head> 
           
           <body style="background-color:lightblue"> 
           <% 
           request.setAttribute("name","心雨"); 
           %> 
           <jsp:forward page="get.jsp"/> 
           </body> 
          </html>
          

          get.jsp:

          <%@page contentType="text/html; charset=GB2312"%> 
          <html> 
           <head> 
           <title> 
           get.jsp file 
           </title> 
           </head> 
           
           <body style="background-color:lightblue"> 
           <% 
           out.println("傳遞過(guò)來(lái)的參數(shù)是:"+request.getAttribute("name")); 
           %> 
           </body> 
          </html> 
          

          request.setAttribute()和request.getAttribute()是配合<jsp:forward>或是include指令來(lái)實(shí)現(xiàn)的。

          3、超鏈接:<a herf="index.jsp?a=a&b=b&c=c">name</a>

          href.jsp:

          <%@page contentType="text/html; charset=GB2312"%> 
          <html> 
           <head> 
           <title> 
           href.jsp file 
           </title> 
           </head> 
           
           <body style="background-color:lightblue"> 
           <a href="getHerf.jsp?name=心雨&password=123">傳遞參數(shù)</a> 
           </body> 
          </html> 
          

          getHref.jsp:

          <%@page contentType="text/html; charset=GB2312"%> 
          <html> 
           <head> 
           <title> 
           getHref.jsp file 
           </title> 
           </head> 
           
           <body style="background-color:lightblue"> 
           <% 
           String name=request.getParameter("name"); 
           name=new String(name.getBytes("iso-8859-1"),"gb2312"); 
           
           out.print("name:"+name); 
           %> 
           <br/> 
           <% 
           out.print("password:"+request.getParameter("password")); 
           %> 
           </body> 
          </html> 
          

          這種傳遞參數(shù)的方法和form表單的get方式類似,是通過(guò)地址欄傳遞的參數(shù),其亂碼解決方法也和form 的get方式一樣。

          4、<jsp:param>

          param.jsp:

          <%@page contentType="text/html; charset=GB2312"%> 
          <html> 
           <head> 
           <title> 
           param.jsp file 
           </title> 
           </head> 
           
           <body style="background-color:lightblue"> 
           
           <%request.setCharacterEncoding("GB2312");%> 
           
           <jsp:forward page="getParam.jsp"> 
           <jsp:param name="name" value="心雨"/> 
           <jsp:param name="password" value="123"/> 
           </jsp:forward> 
           
           </body> 
          </html>
          

          getParam.jsp:

          <%@page contentType="text/html; charset=GB2312"%> 
          <html> 
           <head> 
           <title> 
           getParam.jsp file 
           </title> 
           </head> 
           
           <body style="background-color:lightblue"> 
           <% 
           String name=request.getParameter("name"); 
           out.print("name:"+name); 
           %> 
           <br/> 
           <% 
           out.print("password:"+request.getParameter("password")); 
           %> 
           </body> 
          </html> 
          

          這里發(fā)現(xiàn)了一個(gè)奇怪的問(wèn)題,還是在中文亂碼的問(wèn)題上,在form表單的例子中,如果傳遞方式為post,則只需要在接收參數(shù)的頁(yè)面設(shè)置request的編 碼方式就可以了,即request.setCharacterEncoding("GB2312");,注意是在接收參數(shù)的頁(yè)面,如果將該句放到form 表單里,那么不起作用,仍然是亂碼。而在本例中,為了使傳遞的參數(shù)不出現(xiàn)亂碼,卻是將 request.setCharacterEncoding("GB2312");放在發(fā)送參數(shù)的頁(yè)面中,才會(huì)正常顯示中文,放在接收參數(shù)的頁(yè)面中,不起 作用。也許這就是<jsp:param>和form表單傳遞參數(shù)不同的地方。為什么會(huì)有這個(gè)不同呢?可能是因?yàn)閒orm表單中的參數(shù)是由客戶 端傳送到服務(wù)端上的,需要經(jīng)過(guò)一個(gè)request的打包過(guò)程,但是<jsp:param>傳遞的參數(shù)本身就是在服務(wù)器端的,不需要經(jīng)歷由客戶 端到服務(wù)端這么一個(gè)過(guò)程,但是服務(wù)器里的參數(shù)傳遞是這么回事呢?這個(gè)問(wèn)題,我不知道了!真是知識(shí)是一個(gè)擴(kuò)大的圓圈,你知道的越多,那么不知道的就越多!努 力吧!


          主站蜘蛛池模板: 日韩爆乳一区二区无码| 国产一区二区精品| 日本在线视频一区| 日本免费一区二区三区最新 | 天堂一区人妻无码| 无码人妻精品一区二区三区9厂 | 人妻天天爽夜夜爽一区二区| 91大神在线精品视频一区| 亚洲av无码一区二区三区四区 | 色窝窝无码一区二区三区色欲| 亚洲bt加勒比一区二区| 亚洲熟妇无码一区二区三区导航| 久久精品国内一区二区三区| 一区二区三区无码高清视频| 国产一区二区三区乱码| 无码国产精品一区二区免费| 北岛玲在线一区二区| 日本一区二区三区高清| 日韩最新视频一区二区三| 国产成人精品a视频一区| 亚洲一区免费观看| 欧美成人aaa片一区国产精品 | 综合无码一区二区三区| 人妖在线精品一区二区三区| 蜜桃视频一区二区三区| 91久久精品无码一区二区毛片| 国产精品亚洲专一区二区三区| 中文字幕精品一区二区三区视频| 国产精品福利一区二区| 久久国产三级无码一区二区| 久久精品免费一区二区| 中文字幕在线视频一区| 亚洲国产一区二区三区在线观看| 视频一区二区在线播放| 一区一区三区产品乱码| 久久99热狠狠色精品一区| 国产精品一区二区无线| 国产成人亚洲综合一区| 中文字幕色AV一区二区三区| 国产主播一区二区三区在线观看| 性无码免费一区二区三区在线|