可以接收到。
Request从几个集合取数据是有顺序的,从前到后的顺序依次是 QueryString,Form,最后是ServerVariables。
Request对象按照这样的顺序依次搜索这几个集合中的变量,如果有符合的就中止,后面的就不管了。
假设有个页面:testaspid=111
1、页面是用的是POST的方法发送数据给testasp:
需要用requestfrom("id")取值。
用request("id")也能取到数据,但需要先检测QUERYSTRING的值,速度就变慢了。
2、页面是用的GET的方法发送数据给testasp:
requestquerystring("id")与request("id")都是可以取到get方法的传值。
requestquerystring("id")只能取GET的数据。
扩展资料:
form的常见属性:
1、id:表单的唯一标识。
2、name:表单的名字。
3、method:定义表单提交的方法,有两种方法:Post方法和Get方法。
4、action:用于处理表单的服务器端页面(以URL 形式表示)。
表单中的控件的两个属性:name属性和value属性,每一个控件的这两个属性将构成“name-value对”提交到action属性所定义的页面进行处理。
post方法:
用这种方法提交的表单,数据将以数据块的形式提交到服务器,表单数据不会出现在URL中,所以用这种方式提交的表单数据是安全的。如果表单数据中包含类似于密码等数据,建议使用post方法。
Get方法:
这是发送表单数据的默认方法,这种方法会以 “name1=value1&name2=value2”的形式,将表单数据附加到URL的后面,提交到服务器处理,这种方法安全性不如post方法,因为表单数据会暴露在URL中,但是它的处理效率要比post方法高。
<form name="form1" action="sendasp" method="post">
</form>
这里考虑两种情况。因为大多数用户asp和aspnet统称为asp,这是不正确的,asp和 aspnet这是两种完全不同开发语言。
针对asp
如果是asp接收的话,直接在处理程序中
post提交方式用requestform['表单名']来接收
get提交方式用reuestquerystring['表单名']来接收
如:dim name
name = requestform["name"]
或 name = requestquerystring['name']
针对aspnet
aspnet来接收的话,又要考虑是用普通的html方式还是服务器控件方式。
如果是html方式的话,那么和asp,前面讲的方式差不多。基本上是一样的。
如果采用的是服务器控件。那么直接可以接收,可以不用request对象
如:
<asp:Text ID="Name"></asp:Text>
可以提交按钮的事件中直接用string name = NameText即可。
在Content-Type: image/jpeg这一行的下面就是的数据。通过分割字符串或者字节集,将这一行下面的内容与边界——即下一个 ------WebKitFormBoundary48UAMjkvxyyD2ptz 或EOF之间的内容取出,单独写入一个文件,就可以得到文件。
其实易语言不大适合在网页服务器用,因为它的使用真的不算方便。就新建个webservice项目,然后写个函数类似如下都行
12345678910
public void Up(XmlDocument doc) { //里面通过解析xml *** 作你自己的数据库 } public XmlDocument Down() { //查询数据库并生成xml return new XmlDocument(); }
如果XmlDocument他那边不能接收你就直接改成string类型也行。
顺便说下VS里新建WCF服务项目类型也可以实现类似web service的功能,而且更推荐。
追问
public XmlDocument Down()的意思就是将数据库的字段名全部转换成XML格式,然后返回给对方,对方就根据里面的字段名进行赋值再通过public void Up(XmlDocument doc)这样返回过来吗?
追答
实际上webservice与你平时编程没区别,最大的区别就是要考虑到webservice就是为了跨平台使用的,也就是纯文本类型实际上是最通用的,因此不管参数或者返回值都最好是string,int等基本类型,当然XmlDocument理论上也可以我没试过,你自己多试就知道了。
追问
但我想提供一个数据库表名的类给他进行调用,毕竟所有字段的类型要跟数据库的一致,所以想返回值是一个表的类名,这样的话,是不是应该写成
public XXX getXXX()
{
return new xxx();
}
XXX为某个数据库表的类名,这样对方就能得到我这个类和他对应的属性,然后使用下面的方法返回数据
public void setXXX(XXX x)
{
//判断XXX的值并处理
一个>
>
1 以form形式发送post请求
Reqeusts支持以form表单形式发送post请求,只需要将请求的参数构造成一个字典,然后传给requestspost()的data参数即可。
2 以json形式发送post请求
可以将一json串传给requestspost()的data参数,
3 以multipart形式发送post请求
Requests也支持以multipart形式发送post请求,只需将一文件传给requestspost()的files参数即可。
输出:
{“args”: {},
“data”: “”,
“files”: {
“file”: “Hello world!”
},
“form”: {},
“headers”: {……
“Content-Type”: “multipart/form-data; boundary=467e443f4c3d403c8559e2ebd009bf4a”,
……
},
“json”: null,
……
}
---------------------
作者:weixin_40283480
来源:CSDN
原文:>
>
webxml里的代码里添加
<servlet><servlet-name>testServlet</servlet-name><!--这个名字可以自己定-->
<servlet-class>comsuntestServlet</servlet-class><!--这里是你需要接收客户端请求的那个类以及包名,也就是下面拦截到的url会转发到的那个类-->
</servlet>
<servlet-mapping>
<servlet-name>testServlet</servlet-name><!--和上面的name需要一样-->
<url-pattern>/</url-pattern><!--什么类型的客户端请求会被拦截,/ 就是全拦截了-->
</servlet-mapping>
然后再服务器端的类文件,要实现 >
这两种方法分别对应的是客户端的get请求和post请求的处理,你的是post请求的话,就在doPost()方法内,写你的业务。
然后再用下面两句话,设置你要返回客户端的数据。
//这是设置你要返回去的数据。value才是你的数据,key是标签。
requestsetAttribute("key", "value");
//这是设置你要返回去testjsp这张页面。
requestgetRequestDispatcher("testjsp")forward(request, response);
不知道你是不是这个意思,你可以再去看看相关servlet方面的知识,
关于客户端和服务器端大概也就是有个servlet作为请求的拦截
然后经过相关判断后,选择性的传到服务器的相应类里面。
再经过类里面的业务,把得到需要的数据回传到指定的页面上。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)