html与asp.net交互,AS脚本与Asp.net通过UrlRequest进行前端交互的心得

在as中我们也可以实现同样的功能,而且我们可以配合js来做到跨域,采集cookie等等一些用户行为分析,也算是web开发中的一把利器。

阿里西西小编给您推荐这个AS脚本与Asp.net通过UrlRequest进行前端交互的心得,这里还有关于AS脚本 UrlRequest 前端 交互 的教程,希望您能够喜欢并学到东西提升自己的知识与技能,下面是内容详细阅读:

在.net中我们知道有一个叫做WebHttpRequest的东西,用它我们可以实现各种网络偷窥,监控,采集和机器人,如果外加一个模式识别,那真是吊爆了。。。

在as中我们也可以实现同样的功能,而且我们可以配合js来做到跨域,采集cookie等等一些用户行为分析,也算是web开发中的一把利器。

一:构建与外部程序的通信

1:一般要三个步骤

<1> 使用UrlRequest创建请求对象。

<2> 使用UrlLoader载入请求对象,然后就可以发出请求了。

<3> 监听UrlLoader对象,通过各种事件来反馈处理的结果。

二:构建UrlRequest

下面来看看UrlRequest中的常用属性

1: url

这个很简单了,请求网址,可以是绝对也可以是相对的。

2:method

写过ajax都知道,它是用来控制窗体的提交方式是post还是get,什么get不能大于2k,post无限制等等。

3:requestHeader

我们知道模拟提交都会在http的head中追加各种参数来欺骗服务器端,伪装自己是真实的人为请求。

4:data

就是请求时附带给服务器端的数据,用json格式,url的kv形式都可以,但必须用URLVariables进行封装。

5:简单的demo

程序代码(For Alixixi.com)如下:

var url="http://localhost:25212/index.aspx";

var vari:URLVariables=new  URLVariables();

vari.data="{\"id\":\"2\"}";

var req:URLRequest=new URLRequest(url);

req.data=vari;

req.method=URLRequestMethod.POST;

三:构建UrlLoader对象

: 在as中,所有的UrlRequest都需要用UrlLoader来装载才能进行与后端程序进行交互,同时提供了5个事件来监听当前请求的状况。

1: open事件

请求操作开始时执行的事件

2:progress事件

常用监控下载进度,可以通过byteloaded和bytetotal来实时查看“已加载的数据”和“总数据”。

3:complete事件

成功加载数据后调用的事件,也是最常用的。

4:ioError事件

就像ajax一样,请求失败的时候调用的事件。

: 当远程返回数据的时候,数据都会保存在urlloader中data属性里,当然数据返回的时候是什么类型,取决与我们在post

的时候指定的URLLoaderDataFormat。

1:URLLoaderDataFormat.TEXT

指定当前返回data值必须是text值,当然这也是默认值。

2:URLLoaderDataFormat.BINARY

有时候我们flash需要加载web端的二进制数据的时候,这时候就要指定BINARY属性。

3:URLLoaderDataFormat.VARIABLES

这个就是指定包含的数据是一个经过url编码的数据,所以我们用VARIABLES进行解码。

//用urlloader进行装载

var loader:URLLoader=new URLLoader(req);

loader.addEventListener(Event.COMPLETE,onComplete);

loader.addEventListener(IOErrorEvent.IO_ERROR,onError);

//请求加载完成

function onComplete(e:Event):void{

trace(loader.data);

}

大体上就这样了,下面我们做个实验,向服务器传递json由服务器端进行处理。

1:服务端代码,只是将请求参数原样返回

public partial class Index : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

var data = Request.Form["data"];

Response.Write("恭喜,数据请求成功~   " + data);

}

}

2ba81fe1f2adaa69e09e6bde0d013686.png

2:as代码

import flash.net.URLLoader;

import flash.net.URLRequest;

import flash.events.Event;

import flash.text.TextField;

import flash.utils.Timer;

import flash.events.TimerEvent;

var url="http://localhost:25212/index.aspx";

var vari:URLVariables=new  URLVariables();

vari.data="{\"id\":\"2\"}";

var req:URLRequest=new URLRequest(url);

req.data=vari;

req.method=URLRequestMethod.POST;

//用urlloader进行装载

var loader:URLLoader=new URLLoader(req);

loader.addEventListener(Event.COMPLETE,onComplete);

loader.addEventListener(IOErrorEvent.IO_ERROR,onError);

//请求加载完成

function onComplete(e:Event):void{

trace(loader.data);

}

//io请求错误

function onError(e:IOErrorEvent):void{

trace("对不起,数据请求错误");

}

86d12abffd6e74b3759b269ea4c113f4.png

End. 教程到这里讲完了,阅读是否有所收获呢?本站还提供有AS脚本 UrlRequest 前端 交互 相关的内容,欢迎继续阅读。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值