使用XML技术上传文件的例子

来源:互联网 时间:2008-05-29 11:33:00 

本文讲解了一个使用XML技术上传文件的例子,使用该方法没有传统方法中的种种限制。 这个例子讲述了如何使用MSXML3.0和ADO Stream对象来实现这种新的上传方法。好处有很多,比如,不需要专用的上传组件。

引言

为了在HTML网页中获得上传功能,在客户端我们可以使用如下格式的FORM:

<FORM NAME="myForm"ACTION="TargetURL.asp"
ENCTYPE="multipart/form-data"
METHOD="post">
<INPUT TYPE="file" NAME="myFile">
<INPUT TYPE="submit" VALUE="Upload File">
</FORM>

这种方案在客户端和服务器端的使用都有很多限制。首先,我们必须使用POST方法,因为GET方法无法处理这样的表单数据。并且,没有什么方法可以在不使用表单的情况下引发一个POST动作。把数据发送给表单处理程序后,浏览器将会把处理程序作为新页面加载,然后使用者会看到一个不讨人喜欢的页面转换过程。

ENCTYPE属性为表单定义了MIME编码方式,上传文件的表单的ENCTYPE属性必须使用&ldquo;multipart/form-data&rdquo;。把这个属性设置为&ldquo;multipart/form-data&rdquo;就创建了一个与传统结构不同的POST缓冲区(复合结构),ASP的Request对象无法访问这样的表单内容。所以,我们可以使用Request.binaryRead方法来访问这些数据,但是无法使用脚本语言来完成这一切。Request.binaryRead方法返回一个VTarray型数据(只包含无符号一字节字符的Variant型数组)。但是脚本语言只能处理Variant型数据。为了解决这个问题,只能使用专用的ASP上传组件,或者ISAPI扩展程序,比如CPSHOST.DLL。这是设计上的限制。

标签:
0
投稿

猜你喜欢

  • 封装 Python 时间处理库创建自己的TimeUtil类示例

    2023-01-15 00:45:56
  • Python操作json数据的一个简单例子

    2022-10-23 17:09:37
  • Python里字典的基本用法(包括嵌套字典)

    2023-04-26 14:51:00
  • python opencv之SURF算法示例

    2021-03-06 13:10:28
  • Python Cloudinary实现图像和视频上传详解

    2022-03-13 05:21:13
  • Python设计模式中的状态模式你了解吗

    2023-07-14 08:20:28
  • Python实现新年愿望代码雨效果

    2022-08-02 00:52:35
  • jmeter正则表达式的使用

    2022-08-10 01:10:42
  • 阿里云CentOS7搭建Apache+PHP+MySQL环境

    2023-11-23 02:44:59
  • 用Dreamweaver 4.0编制会议通知

    2010-10-20 20:06:00
  • Python StringIO及BytesIO包使用方法解析

    2022-12-24 15:34:26
  • 解决使用layui对select append元素无效或者未及时更新的问题

    2024-04-16 09:27:43
  • CSS 那些事儿

    2008-12-02 18:19:00
  • js实现单机双人象棋设计分析

    2008-05-20 12:57:00
  • MySQL创建带特殊字符的数据库名称方法示例

    2024-01-26 15:31:30
  • Python中实现参数类型检查的简单方法

    2022-07-26 18:53:07
  • 关于淘宝页面编码的疑惑

    2009-12-04 12:54:00
  • 解析:安装 MySQL时如何选择安装软件包

    2008-12-31 17:15:00
  • list视图方式设计浅析

    2008-12-21 16:04:00
  • Pandas实现一列数据分隔为两列

    2021-01-06 04:31:36
  • asp之家 网络编程 m.aspxhome.com