Remoting by NetConnection

本文介绍如何通过NetConnection组件直接调用FlashRemoting服务,实现客户端与服务器之间的高效通信。文中提供了ActionScript代码示例及Java服务器端代码,并解释了NetConnection的两种连接方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一般在使用Flash Remoting功能的時候
都是安裝Remoting Library AS1、AS2 Component來用
其實是可以直接用NetConnection呼叫Remoting的

因為AMF在Flash Player中的Serialize、Deserialize動作
都是透過NetConnection於底層完成,並非寫在AS
就是因為寫在底層,所以AMF會比其他格式來得更有效率

NetConnection具有兩種連線方式,決定於要連線URL通訊協定
對FlashCom RTMP連線是像Socket持續性即時連線
對Remoting Server HTTP則是非持續性連線

不過兩者都是以AMF格式作序列化

以下示範用NetConnection呼叫Remoting方式:

ActionScript Code:

  1. var nc:NetConnection = new NetConnection();
  2. var url:String = "http://192.168.0.10:8084/FlashRemoting/gateway";
  3. nc.onResult = function(data) {
  4.         trace("onResult : "+data);
  5. };
  6. nc.onStatus = function(info) {
  7.         trace("onStatus : "+info);
  8.         for (var i in info) {
  9.                 trace("info["+i+"] : "+info[i]);
  10.         }
  11. };
  12. nc.connect(url);
  13. nc.call("swl.NewClass.Test", nc, 11);
  14. //output: onResult : Test() with Number : 11.0
 
Java Class Code:
  1. package swl;
  2. public class NewClass {
  3.     
  4.     public NewClass() {
  5.     }
  6.     
  7.     public java.util.Map Test(java.util.Map map) {
  8.         return map;
  9.     }
  10.     public String Test(java.util.ArrayList arraylist) {
  11.         return "Test() with ArrayList : " + arraylist;
  12.     }
  13.     public String Test(String str) {
  14.         return "Test() with String : " + str;
  15.     }
  16.     public String Test(String[] str) {
  17.         return "Test() with String Array : " + str;
  18.     }
  19.     public String Test(Number num) {
  20.         return "Test() with Number : " + num;
  21.     }
  22.     public String Test(boolean bo) {
  23.         return "Test() with boolean : " + bo;
  24.     }
  25.     public String Test() {
  26.         return "Test() no arguments";
  27.     }
  28. }

 

此文收藏自Ticore‘s Blog: http://ticore.blogspot.com/2005/09/remoting-by-netconnection.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值