javascript socket

//---------------------
//-javascript socket
//-近期邮局项目需求,研究下了下javascript socket。
//-网上很多javascript socket都是借助flash as3.0的 Socket Programming,因此很努力的研究了下
//-flash的p2p技术,结果很让我失望,as 跟 js一样始终无法实现点对点连接,f读写操作文件等。要实现这些功能都是要通过CGI模拟的。
//-于是乎搞了下面这个程序
/**
 * javascript socket
 * @Author:nathena
 * @Email:nathenayang@gmail.com
 * @Date:200707
 */
function Socket(ip,port,cb,pp)

 this.ip = ip;
 // callee,caller
 this.callback = cb?"function callback(){parent."+cb+"()}":"";
 this.pp = pp||"";
 this.port = port;
 this.socketTarget = "";

 var _this = this;

 this.socket=function()
 {
  //create hidden socket
  /**
   * @return socket object;
 
  var _s = document.createElement("form");
   _s.innerHTML="<input type='hidden' value='"+Base(p)+"'>";
   _s.action = _this.socketTarget;
   _s.method ="post";
   _s.target="chat"
   document.body.appendChild(_s);
   _s.submit();
  */
 } 
 
 this.setIp=function(ip)
 {
  if(!ip)
   throw new Error("Error ip!");
  _this.ip = ip;
 }
 this.getIp=function()
 {
  return _this.ip;
 }

 this.setPort=function(port)
 {
  if(!port)
   throw new Error("Error port!");
  _this.port = port;
 }
 this.getPort = function()
 {
  return _this.port;
 }

 this.setPP = function(pp)
 {
  if(!pr)
   _this.pp = "http";
  else
   this.pp = pp;
 }
 this.getPP = function()
 {
  return _this.pp;
 }

 this.setCallback=function((cb=""))
 {
  _this.callback = cb;
 }
 this.getCallback=function()
 {
  return _this.callback;
 }

 this.setSocketTarget=function(socket)
 {
  if(socket)
  {
   _this.socket = socket;
  }
  else
  {
   _this.socket=createSocket();
  }  
 }
 this.getSocketTarget=function()
 {
  return _this.socket;
 }

 function createSocket()
 {
  var _s;
  if(!_this.ip||!_this.port)
   throw new Errot("Create Socket faild");
  if(pp)
   _s = pp+"://"+ip+":"+port;
  else
   _s = "http://"+ip+":"+port;
  return _s
 }
}
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值