国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

使用post方法實現json往返傳輸數據的方法

2024-05-06 15:41:14
字體:
來源:轉載
供稿:網友

問題所在:

當我們想讓應用層和http之間的所有接口都采用json,這樣,客戶端代碼就可以純碎用javascript的對象來編寫,服務器打啊也可以純粹的用Java的對象來編寫。

我們使用的是post請求的方法,有些不同于get的方法!

客戶端html代碼:

<html><head><title>Hello Ajax version 5a</title><style type='text/css'>* { font-family: Tahoma, Arial, sans-serif; }#helloTitle{ color: #48f; }.sidebar{ background-color: #adf; color: navy; border: solid blue 1px; width: 180px; height: 200px; padding: 2px; margin: 3px; float: left;}</style><script type='text/javascript' src='prototype.js'></script><script type='text/javascript' src='json.js'></script><script type='text/javascript'>window.onload=function(){ $('helloBtn').onclick=function(){  var name=$('helloTxt').value;  new Ajax.Request(   "hello5a.jsp",   {    postBody:JSON.stringify({name:name}),    onComplete:function(xhr){     var responseObj=JSON.parse(xhr.responseText);     update(responseObj);    }   }  ); }}function update(obj){ $('helloTitle').innerHTML="<h1>Hello, <b><i>"+obj.name+"</i></b></h1>"; var likesHTML='<h5>'+obj.initial+' likes...</h5><hr/>'; for (var i=0;i<obj.likes.length;i++){  likesHTML+=obj.likes[i]+"<br/>"; } $('likesList').innerHTML=likesHTML; var recipeHTML='<h5>'+obj.initial+'/'s favourite recipe</h5>'; for (key in obj.ingredients){  recipeHTML+=key+" : "+obj.ingredients[key]+"<br/>"; } $('ingrList').innerHTML=recipeHTML;}</script></head><body><div id='likesList' class='sidebar'><h5>Likes</h5><hr/></div><div id='ingrList' class='sidebar'><h5>Ingredients</h5><hr/></div><div><div id='helloTitle'><h1>Hello, stranger</h1></div><p>Please introduce yourself by entering your name in the box below</p><input type='text' size='24' id='helloTxt'></input> <button id='helloBtn'>Submit</button></div></body></html>

jsp代碼:

<jsp:directive.page contentType="application/javascript" import="java.util.*,net.sf.json.*"/><%//read the request bodyString json=request.getReader().readLine(); //讀取post請求主體JSONObject jsonObj=new JSONObject(json);//解析json字符串String name=(String)(jsonObj.get("name"));//讀取解析后的對象jsonObj.put("initial",name.substring(0,1).toUpperCase()); //添加新的值String[] likes=new String[]{ "JavaScript", "Skiing", "Apple Pie" };jsonObj.put("likes",likes);Map ingredients=new HashMap();ingredients.put("apples","3kg");ingredients.put("sugar","1kg");ingredients.put("pastry","2.4kg");ingredients.put("bestEaten","outdoors");jsonObj.put("ingredients",ingredients);%><%=jsonObj%>  <!--以json的形式輸出對象-->            
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 鸡东县| 淮北市| 玉田县| 黄石市| 清徐县| 岳西县| 枣阳市| 讷河市| 漾濞| 旅游| 延吉市| 科技| 永吉县| 博罗县| 台南市| 大渡口区| 名山县| 德化县| 新丰县| 大荔县| 靖江市| 永寿县| 宝山区| 南丹县| 天津市| 巨鹿县| 神池县| 交口县| 永昌县| 五华县| 无为县| 普兰店市| 怀来县| 从化市| 南投市| 进贤县| 安乡县| 锦屏县| 碌曲县| 巍山| 巴里|