zoukankan      html  css  js  c++  java
  • URLLoader 类和 URLVariables 类

    使用 URLLoader 类和 URLVariables

    与早期版本 ActionScript 中的 XML LoadVars 类非常相似,URLLoader URL 的数据在下载完成之前不可用。尽管如果文件加载速度太快,可能不会调度 ProgressEvent.PROGRESS事件,但您可以通过侦听要调度的 flash.events.ProgressEvent.PROGRESS事件来监视下载进度(已加载的字节数和总字节数)。成功下载文件后,将调度 flash.events.Event.COMPLETE事件。加载的数据将从 UTF-8 UTF-16 编码被解码为字符串。

    注意

     

    如果没有为 URLRequest.contentType设置值,则以 application/x-www-form-urlencoded的形式发送值。

    URLLoader.load()方法(以及 URLLoader 类的构造函数,可选)使用一个参数,即 request,该参数是一个 URLRequest 实例。URLRequest 实例包含单个 HTTP 请求的所有信息,如目标 URL、请求方法(GETPOST)、附加标头信息以及 MIME 类型(例如,当上载 XML 内容时)。

    例如,要将 XML 数据包上载到服务器端脚本,您可以使用下面的 ActionScript 3.0 代码:

     

    var secondsUTC:Number = new Date().time;

    var dataXML:XML =

    <login>

    <time>{secondsUTC}</time>

    <username>Ernie</username>

    <password>guru</password>

    </login>;

    var request:URLRequest = new URLRequest("http://www.yourdomain.com/login.cfm");

    request.contentType = "text/xml";

    request.data = dataXML.toXMLString();

    request.method = URLRequestMethod.POST;

    var loader:URLLoader = new URLLoader();

    try

    {

    loader.load(request);

    }

    catch (error:ArgumentError)

    {

    trace("An ArgumentError has occurred.");

    }

    catch (error:SecurityError)

    {

    trace("A SecurityError has occurred.");

    }



    上面的代码片段创建了一个名为 dataXML XML 实例,其中包含要发送到服务器的 XML 数据包。接下来,将 URLRequest contentType属性设置为"text/xml",将 URLRequest data属性设置为 XML 数据包的内容(通过 XML.toXMLString()方法将该内容转换为字符串)。最后,创建一个新的 URLLoader 实例,并使用 URLLoader.load()方法将请求发送到远程脚本。

     可以使用三种方式指定要在 URL 请求中传递的参数:

    • URLVariables 构造函数中
    • URLVariables.decode()方法中
    • 作为 URLVariables 对象本身中的特定属性

    当定义 URLVariables 构造函数或 URLVariables.decode()方法中的变量时,需要确保对"and"符进行 URL 编码,因为它具有特殊含义并作为分隔符使用。例如,由于与号作为参数的分隔符使用,当传递与号时,需要将与号从 &更改为 %26来对与号进行 URL 编码。

     

    ——摘自AS3.0帮助文档

  • 相关阅读:
    luogu_1414 又是毕业季II
    luogu_1372 又是毕业季I
    luogu_1313 计算系数
    luogu_1134 阶乘问题
    luogu_1514 引水入城
    luogu_1120 小木棍
    文件操作
    快速排序
    c oth
    ANSI C与C89、C99、C11区别差异
  • 原文地址:https://www.cnblogs.com/iwhk/p/2436261.html
Copyright © 2011-2022 走看看