`
- 浏览:
67072 次
- 性别:
- 来自:
南京
-
前台向后台传参,一般有如下几种方式:
1)URL方式传参
这种方式传参时,首个参数置于url的后面,用“?”连接;形式:url?param=value
如:http://zhidao.baidu.com/q?word=%D6%BD%B1%D2+%CB%BA%BB%D9
多个参数时,参数间用“&”连接,
例如:http://zhidao.baidu.com/q?word=%D6%BD%B1%D2+%CB%BA%BB%D9&lm=0&fr=search&ct=17&pn=0&tn=ikaslist&rn=10
URL传参很方便,但是在应用时,有2个缺陷:
1)单个参数的value不能超过1920000个字节。本文这里暂时定义为大参数。
2)传递bean时很麻烦。
有种劣质方法可以办到,就是将bean的属性均需作为一个参数连接到url里传递。
比如要传递一个人这个类(有身高和性别)到后台,
前台:var pepole = {age:22,sex:'male'}
要是直接把pepole拼接到url里:url?pepole=pepole,后台在不设置struts参数解析拦截器时,以string接收将会是一个object Object。
假如后台action里声明的是这个bean类型属性,可以实现的方式是:url?pepole.age=22&pepole.sex=male
要注意的是:URL里点后面的age和sex最好跟pepole的age和sex大小写相同!
这样后台就直接接收到了一个bean。
想想看,如果bean属性很多,这让前台的兄弟情何以堪?
所以,这种方法适合bean属性少的情况,且不追求优雅的代码规范下写写。
2)jQery或Ajax方式传递
先说Ajax方式,这种方式手册上用法多的是,这里只讲讲大字串参数时,例如
Ext.Ajax.request( {
url : path+'/abc/abcAction!pramaTest.action',
success: function(response) {//这里要处理pramaTest的返回service
},
failure: function(response) {
},
params: {
data : this.veryLongJsonStr,
data2 : Ext.encode(this.veryLongJsonStr)
}
});
this.veryLongJsonStr是个长度超过1920000字节的JSON字符串。
可有清楚一点是:Ajax可有传递大数值参数
再说jQery方式,比如API上的一个例子:
$.post(url,
{ name: "John", time: "2pm" },
function(data){
alert("Data Loaded: " + data);
}
);
jquery方式也是可以处理传递大数值参数的。
3)form的post方式
var frm = document.getElementById("xxform");
frm.action=path+'/abc/abcAction!pramaTest.action';
frm.submit();
xxform里预置一个hidden的标签,在submit之前可以把veryLongJsonStr赋值给这个隐藏的控件。这样,form的post方式也是可以传递大参数的。不过,可能会存在安全问题。
一般,我们处理这样的前后台交互,还是使用Ajax、jquery这样的成熟的框架来做这些细微的事情,比较妥当。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
以上示例展示了如何在ASP.NET Web Forms项目中从前端调用后台方法并传递参数。需要注意的是,在实际开发中,这种方式并不推荐用于复杂的业务逻辑处理,因为这可能会导致安全性和可维护性方面的问题。对于更复杂的...
"springmvc3+json参数传递后台接收json参数"这个主题涉及到的是如何使用Spring MVC 3版本接收前端通过JSON格式发送的数据。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其易于人阅读和编写,...
在本文中,我们将深入探讨如何在JavaServer Pages (JSP) 中使用jQuery和Ajax来传递JSON格式的参数。...通过这些步骤,开发者可以有效地在JSP中实现前后台之间的JSON数据交互,提高Web应用的用户体验。
通过以上方法,可以有效地预防和解决大部分的前后台传值乱码问题。但需要注意,每个项目可能有其特定的环境和需求,因此在实际应用中,需要根据具体情况进行调整和优化。 最后,当遇到乱码问题时,调试和日志记录是...
它是基于JavaScript的一个子集,但并非JavaScript的专属,它被广泛应用于各种编程语言中,包括前端与后端之间的数据交互。本文将详细介绍JSON在从前台(前端)到后台(后端),以及从后台返回到前台的基本传值方式。...
在讨论JavaScript的AJAX技术如何与后台服务器端类的方法进行交互时,主要是利用HTTP请求来实现前台与后台的数据交换。这个过程涉及到了几个关键的技术点,包括如何设置Web服务的方法以便它们能被客户端调用、如何...
HttpClient可以帮助我们在后台模拟用户请求,与Struts2 Action进行交互,以便测试或实现服务间通信。 在使用HttpClient时,我们需要创建一个`CloseableHttpClient`实例,然后使用`HttpPost`或`HttpGet`对象来构建...
**描述分析:** 描述中的“在vs2010下的一个完整的通过ajax 在前后台传参json的格式”表明这是一个在Visual Studio 2010环境下开发的项目,它演示了如何使用AJAX技术将JSON格式的数据作为参数从客户端(前端)传递到...
14. **smartclient 传参**:SmartClient可以通过URL参数、隐藏字段或Ajax请求将数据传递给服务器,支持复杂的参数结构和序列化。 15. **动态获取后台执行状态**:SmartClient可以实时监控服务器端任务的执行状态,...
WPF应用接收启动参数有两种方式:通过命令行参数(cmd 传参)或使用其他方法(如配置文件或注册表)传递。 【异常处理】 WPF应用程序中未处理的异常可以通过两种方式捕获:一是窗口级别,二是应用程序级别,确保...
注意,后台接收的`param`参数应与前端设置的一致。 总的来说,layui的文件上传控件允许我们在上传文件时携带额外的数据,只需在`before`事件中进行处理并转换为JSON格式,然后在后台接收到这个数据后进行解析即可。...
1. **前端Ajax传参**:前端通过Ajax进行数据传递,这涉及到jQuery或其他前端框架如Vue或React等的Ajax方法。在示例中,使用了类似jQuery的API来发送POST请求,将数据封装在JSON对象中,如`data: {"nonQuantify":"",...
在开发Web应用时,数据交互是必不可少的一部分,尤其是在前端与后端之间。有时我们需要通过URL传递包含中文的数据,但是这通常会遇到一个棘手的问题,即中文字符在URL中可能会出现乱码。这是因为HTTP协议中默认的...
-数据传递:单页面容易,多页面需要依赖url传参,或cookie,localSrorage等 -搜索引擎优化:单页面需要单独方案,实现较为困难,不利于SEO搜索,可利用与SSR优化,多页面实现方法容易 -适用范围:单页面高要求的...
在这个例子中,`loop1`和`loop2`是我们的线程函数,`args`参数是一个元组,用于传递参数给线程函数。`start`方法启动线程,而`join`方法确保主程序会等待所有线程执行完毕后再继续执行。 在多线程编程中,有时我们...