积少成多Flash(3) - ActionScript 3.0 基础之以文本形式、XML形式和JSON形式与ASP.NET通信

简介:
索引页]
[源码下载]


积少成多Flash(3) - ActionScript 3.0 基础之以文本形式、XML形式和JSON形式与ASP.NET通信


作者: webabcd


介绍
Flash ActionScript 3.0  以文本形式与ASP.NET通信、以XML形式与ASP.NET通信和以JSON形式与ASP.NET通信


示例
Text.aspx.cs
using System; 
using System.Data; 
using System.Configuration; 
using System.Collections; 
using System.Web; 
using System.Web.Security; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
using System.Web.UI.HtmlControls; 
 
public partial  class Text : System.Web.UI.Page 

         protected  void Page_Load( object sender, EventArgs e) 
        { 
                 string s =  "name: " + Request.QueryString[ "name"] +  "; age: " + Request.QueryString[ "age"]; 
 
                Response.ClearContent(); 
                Response.ContentType =  "text/plain"
                Response.Write(s); 
                Response.End(); 
        } 
}
 
Xml.aspx.cs
using System; 
using System.Data; 
using System.Configuration; 
using System.Collections; 
using System.Web; 
using System.Web.Security; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
using System.Web.UI.HtmlControls; 
 
public partial  class Xml : System.Web.UI.Page 

         protected  void Page_Load( object sender, EventArgs e) 
        { 
                 string s =  @"<?xml version=""1.0 "" encoding=""utf-8""?> 
                        <root> 
                                <person name= ""webabcd"" age= ""27""> 
                                        <salary>1000</salary> 
                                </person> 
                                <person name= ""webabcdefg"" age= ""37""> 
                                        <salary>2000</salary> 
                                </person> 
                                <person name= ""webabcdefghijklmn"" age= ""47""> 
                                        <salary>3000</salary> 
                                </person> 
                        </root>"; 
 
                Response.ClearContent(); 
                Response.ContentType =  "text/xml"
                Response.Write(s); 
                Response.End(); 
        } 
}
 
JSON.aspx.cs
using System; 
using System.Data; 
using System.Configuration; 
using System.Collections; 
using System.Web; 
using System.Web.Security; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
using System.Web.UI.HtmlControls; 
 
public partial  class JSON : System.Web.UI.Page 

         protected  void Page_Load( object sender, EventArgs e) 
        { 
                Person person =  new Person(); 
                person.Name =  "webabcd"
                person.Age = 27; 
 
                HttpContext.Current.Response.ClearContent(); 
                 // HttpContext.Current.Response.ContentType = "application/json"; 
                HttpContext.Current.Response.ContentType =  "text/plain"
 
                 // 把person对象序列化成JSON 
                System.Runtime.Serialization.DataContractJsonSerializer dcjs =  new System.Runtime.Serialization.DataContractJsonSerializer(person.GetType()); 
                dcjs.WriteObject(HttpContext.Current.Response.OutputStream, person); 
 
                HttpContext.Current.Response.End(); 
        } 

 
/// <summary> 
/// Person类 
/// </summary> 
[System.Runtime.Serialization.DataContract] 
public  class Person 

         private  string _name; 
         /// <summary> 
         /// 姓名 
         /// </summary> 
        [System.Runtime.Serialization.DataMember] 
         public  string Name 
        { 
                get {  return _name; } 
                set { _name = value; } 
        } 
 
         private  int _age; 
         /// <summary> 
         /// 年龄 
         /// </summary> 
        [System.Runtime.Serialization.DataMember] 
         public  int Age 
        { 
                get {  return _age; } 
                set { _age = value; } 
        } 
}
 
Net.as
package 

        import flash.display.Sprite; 
        import flash.net.URLLoader; 
        import flash.net.URLRequest; 
        import flash.net.URLVariables; 
        import flash.net.URLRequestMethod; 
        import flash.events.Event; 
         
        // 对JSON的支持 
        import com.adobe.serialization.json.JSON; 
         
        public class Net extends Sprite 
        { 
                public function Net() 
                { 
                        // 以文本形式与ASP.NET通信 
                        showText(); 
                         
                        // 以XML形式与ASP.NET通信 
                        showXml(); 
                         
                        // 以JSON形式与ASP.NET通信 
                        showJSON(); 
                } 
                 
                // 以文本形式与ASP.NET通信 
                function showText():void 
                { 
                        var v:URLVariables = new URLVariables("name=webabcd&age=27"); 
                        var r:URLRequest = new URLRequest(); 
                        r.url = "http://localhost:1343/Web/Text.aspx"; 
                        r.method = URLRequestMethod.GET; 
                        r.data = v; 
                         
                        var l:URLLoader = new URLLoader(); 
                        l.load(r); 
                        l.addEventListener(Event.COMPLETE, textCompleteHandler); 
                } 
                 
                function textCompleteHandler(event:Event):void 
                { 
                        var l:URLLoader = URLLoader(event.target); 
                         
                        trace(l.data); 
                        // output: name: webabcd; age: 27 
                } 
                 
                // 以XML形式与ASP.NET通信 
                function showXml():void 
                { 
                        var v:URLVariables = new URLVariables() 
                        var r:URLRequest = new URLRequest(); 
                        r.url = "http://localhost:1343/Web/Xml.aspx"; 
                        r.method = URLRequestMethod.GET; 
                        r.data = v; 
                         
                         
                        var l:URLLoader = new URLLoader(); 
                        l.load(r); 
                        l.addEventListener(Event.COMPLETE, xmlCompleteHandler); 
                } 
                 
                function xmlCompleteHandler(event:Event):void 
                { 
                        var l:URLLoader = event.target as URLLoader; 
                        var xml:XML = new XML(l.data); 
                         
                        for each(var v in xml.person) 
                        { 
                                trace("姓名:" + v.@name + ";年龄:" + v.@age + ";薪水:" + v.salary); 
                        } 
                        // output:    
                        // 姓名:webabcd;年龄:27;薪水:1000 
                        // 姓名:webabcdefg;年龄:37;薪水:2000 
                        // 姓名:webabcdefghijklmn;年龄:47;薪水:30 
                } 
                 
                // 以JSON形式与ASP.NET通信 
                function showJSON():void 
                { 
                        var v:URLVariables = new URLVariables() 
                        var r:URLRequest = new URLRequest(); 
                        r.url = "http://localhost:1343/Web/JSON.aspx"; 
                        r.method = URLRequestMethod.GET; 
                        r.data = v; 
                         
                         
                        var l:URLLoader = new URLLoader(); 
                        l.load(r); 
                        l.addEventListener(Event.COMPLETE, jsonCompleteHandler); 
                } 
                 
                function jsonCompleteHandler(event:Event):void 
                { 
                        var l:URLLoader = event.target as URLLoader; 
                         
                        var v:* = JSON.decode(l.data); 
                         
                        trace("姓名:" + v.Name + ";年龄:" + v.Age); 
                        // output: 姓名:webabcd;年龄:27 
                } 
        } 
}
 
 




     本文转自webabcd 51CTO博客,原文链接: http://blog.51cto.com/webabcd/342184 ,如需转载请自行联系原作者

相关文章
|
XML JSON 前端开发
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程json转bpmn的flowable的xml格式(支持并行网关)
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程json转bpmn的flowable的xml格式(支持并行网关)
1098 3
|
XML JSON Java
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
本文介绍了如何使用IntelliJ IDEA和Maven搭建一个整合了Struts2、Spring4、Hibernate4的J2EE项目,并配置了项目目录结构、web.xml、welcome.jsp以及多个JSP页面,用于刷新和学习传统的SSH框架。
568 0
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
|
XML JSON 前端开发
C#使用HttpClient四种请求数据格式:json、表单数据、文件上传、xml格式
C#使用HttpClient四种请求数据格式:json、表单数据、文件上传、xml格式
2995 0
|
XML JSON 前端开发
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程json转bpmn的flowable的xml格式(排它条件网关)
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程json转bpmn的flowable的xml格式(排它条件网关)
457 3
基于若依的ruoyi-nbcio流程管理系统仿钉钉流程json转bpmn的flowable的xml格式(排它条件网关)
|
Java Spring 容器
彻底改变你的编程人生!揭秘 Spring 框架依赖注入的神奇魔力,让你的代码瞬间焕然一新!
【8月更文挑战第31天】本文介绍 Spring 框架中的依赖注入(DI),一种降低代码耦合度的设计模式。通过 Spring 的 DI 容器,开发者可专注业务逻辑而非依赖管理。文中详细解释了 DI 的基本概念及其实现方式,如构造器注入、字段注入与 setter 方法注入,并提供示例说明如何在实际项目中应用这些技术。通过 Spring 的 @Configuration 和 @Bean 注解,可轻松定义与管理应用中的组件及其依赖关系,实现更简洁、易维护的代码结构。
366 0
|
XML JSON 前端开发
初学者指南:JSON 和 XML 的区别
当我们讨论数据交换格式时,JSON(JavaScript对象表示法)和 XML(可扩展标记语言)无疑是最受欢迎的两种选择。这两者各有优点和缺点,根据具体的应用场景,选择合适的格式可以显著提高开发效率和系统性能。
|
XML JSON 缓存
优化Java中XML和JSON序列化
优化Java中XML和JSON序列化
|
JSON 开发框架 API
【推荐100个unity插件之20】一个强大的JSON处理库——Newtonsoft.Json(也称为Json.NET)
【推荐100个unity插件之20】一个强大的JSON处理库——Newtonsoft.Json(也称为Json.NET)
1715 0
|
XML JSON 开发框架
一篇文章讲明白JSON格式转换成XML格式
一篇文章讲明白JSON格式转换成XML格式
192 0
|
XML JSON 开发框架
一篇文章讲明白JSON格式转换成XML格式
一篇文章讲明白JSON格式转换成XML格式
214 0