2009-08-30 3 views

답변

1

나는 꽤 쉽게 잡을 수 있다고 생각합니다. 테스트를 거치지 않았지만 시도해보십시오.

String ip = FlexContext.getHttpRequest().getRemoteAddr(); 
+0

로마

감사를 연결 whoz 제공하지만, RTMP 채널에 대한 작업 표시되지 않습니다. HTTP 요청 개체가 null입니다. –

+0

BlazeDS에서도 잘 작동합니다. –

1

간단한 메소드 호출로 모든 채널 유형에서이를 수행하는 방법을 찾지 못했습니다. . 그래서 나는 그런 코드를 사용합니다

String ip; 
    Endpoint clientEndpoint = FlexContext.getEndpoint(); 
    if (clientEndpoint instanceof RTMPEndpoint) { 
     ip = ((RTMPFlexSession)FlexContext.getFlexSession()).getClientInfo().getIp(); 
    } 
    if ((clientEndpoint instanceof NIOAMFEndpoint) || (clientEndpoint instanceof AMFEndpoint)) { 
     ip = FlexContext.getHttpRequest().getRemoteAddr(); 
    } 
0

IP = FlexContext.getHttpRequest() getRemoteAddr를();

이다 내가 그 채널의 특정 종류의 일을 생각