猿问

js如何发起Method=CONNECT的http请求

1.http协议中支持以下方法

2.XMLHttpRequest不支持connect的method

xmlHttp=null;
if (window.XMLHttpRequest)
  {// code for IE7, Firefox, Opera, etc.
  xmlHttp=new XMLHttpRequest();
  }
else if (window.ActiveXObject)
  {// code for IE6, IE5
  xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
if (xmlHttp!=null)
  {
  xmlHttp.open("CONNECT", "http://www.w3school.com.cn/example/xdom/note.xml", false);
  xmlHttp.send(null);
  xmlDoc=xmlHttp.responseText;

  xmlHttp.open("CONNECT", "http://www.w3school.com.cn/example/xdom/demo_dom_http.asp", false);
  xmlHttp.send(xmlDoc);
  document.write(xmlHttp.responseText);
  }
else
  {
  alert("Your browser does not support XMLHTTP.");
  }

https://img.mukewang.com/5c8f43b00001af2f08000035.jpg

3.问题:JavaScript或php等语言中,如何发起method=connect的http请求?

温温酱
浏览 621回答 3
3回答

HUWWW

个人感觉可能是因为connect是一个双向传输的方法,而ajax这种异步的请求没办法做到双向数据传输(只能在发起请求时传输数据) 如果要实现类似的操作,我觉得你可以考虑使用web scoket吧。

喵喵时光机

谢邀。你也知道XMLHttpRequest属于运行环境提供的Web API,不支持CONNECT,TRACK,TRACE。所以如果你是问浏览器怎么发,那是发不出去的。如果你是问JavaScript怎么发,可以从服务器上发,比如nodejs。
随时随地看视频慕课网APP
我要回答