2014-10-16 1 views
0

404 및 401 (또는 모든) HTTP 상태 코드를 구분하려고 시도하지만 NetStream/NetConnect에서 발생하는 이벤트에는 HTTP 상태가 포함되지 않는 것으로 보입니다.AS3 NetStream 객체에서 HTTP 상태 코드를 가져 오는 방법은 무엇입니까?

var url = "404_or_401_producing_url"; 

var _nc = new NetConnection(); 
_nc.connect(null); 

var _ns = new NetStream(_nc); 
_ns.play(url); 

HTTP 상태를 포함하는이 흐름 중에 사용할 수있는 이벤트 또는 속성이 있습니까?

답변

2

NetConnection/NetStatus 그런 식으로 작동하지 않습니다. 그것은 4xx 상태 코드를 던지지 않는 RTMP 서버에 연결하기위한 것입니다. 그러나 이벤트 리스너를 만들 수 있습니다. 나는 당신이 HTTPStatusEvent을 사용하지 말아 URLStream 대신 NetStream 사용하는 운영자 추천,

connection = new NetConnection(); 
connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); 

private function netStatusHandler(event:NetStatusEvent):void { 
    switch (event.info.code) { 
     case "NetConnection.Connect.Success": 
      connectStream(); 
     break; 
     case "NetStream.Play.StreamNotFound": 
      trace("Stream not found: " + videoURL); 
     break; 
    } 
} 

a whole bunch of status codes이 듣고 있습니다,하지만 그들 중 누구도 HTTP 상태 코드를 얻으려면 4XX 오류

0

없습니다. 자세한 내용은 여기를 참조하십시오 (adobe의 링크) : URLStreamHTTPStatusEvent. 그리고 HTTP 상태를 확인한 후에 NetStream을 사용하여 스트림을 재생할 수 있습니다.

관련 문제