WEB开发网
开发学院图形图像Flash 基于flex4技术从零开发flex博客系统 : 2 与servle... 阅读

基于flex4技术从零开发flex博客系统 : 2 与servlet服务端交互

 2009-05-05 12:04:27 来源:WEB开发网   
核心提示: 我用URLLoader向服务端发起一个http get请求,参数为name,基于flex4技术从零开发flex博客系统 : 2 与servlet服务端交互(5),并对URLLoader注册了一个事件监听,监测其complete事件,http并不是最好的选择,amf相对http协议有更高的通

我用URLLoader向服务端发起一个http get请求,参数为name,并对URLLoader注册了一个事件监听,监测其complete事件,该事件发生在请求返回数据之后,而URLloader的data属性记录了返回结果。URLLoader在实例化时,如果发现已有URLRequest做为构造参数传入,它会自动调用load方法,故而此处无须再显式调用load方法。

思考问题2:如果在Index.mxml中,请求的代码,写成如下模样,又当如何:

var request : URLRequest = new URLRequest("http://localhost:8080/gapp_flexblog/hello");
request.method = URLRequestMethod.POST;
request.data = new URLVariables("name=sban");

区别在于第二种写法使用的是http post请求。

运行flex客户端,效果如下:

基于flex4技术从零开发flex博客系统 : 2 与servlet服务端交互

基于flex4技术从零开发flex博客系统 : 2 与servlet服务端交互

为了验证思考问题1,我修改了web.xml文件,让/gapp_flexblog/hello直接映射到sban.flexblog.server.HelloWorldServlet,部分代码如下:

  <servlet-mapping>
    <servlet-name>sban.flexblog.server.HelloWorldServlet</servlet-name>
    <url-pattern>/gapp_flexblog/hello</url-pattern>
  </servlet-mapping>

运行,Oh My God!报出了No such Servlet错误。看来定义从url到servlet的映射时,必须要有servlet name做为中间人。

为了验证思考问题2,我修改了Index.mxml代码,用post方法发出请求,报出了error。error信息不再粘出,阅者可自行测试。而如果我在HelloWorldServlet中覆盖了doPost方法后,便可以了。

flex与server通讯,http并不是最好的选择。amf相对http协议有更高的通讯效率。下一课我计划学习一下如何用remoting与server通讯。

系列文章:

flex选修课之第一课:flex4开发环境配置与第一个应用程序hello world

flex选修课之第三课:使用Remoting服务

上一页  1 2 3 4 5 

Tags:基于 flex 技术

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接