이름/버전 (추가 정보)괄호 안의 값을 통해 추가적인 정보를 확인할 수 있습니다. 예를 들면 제가 쓰는 파이어폭스의 user agent는
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4이고, IE의 경우는
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; WWTClient2)입니다.
Mozilla/5.0 (Windows; U; en-US) AppleWebKit/523+ (KHTML, like Gecko) AdobeAIR/1.1물론 수정할 수도 있습니다. user agent를 수정하면 HTTP 헤더를 통해 여러분의 AIR 애플리케이션을 식별할 수 있습니다. user agent에 애플리케이션 이름과 버전을 넣으면 여러분이 제공하는 서비스나 공개 API에 접근하는 애플리케이션의 이름과 그 버전을 확인할 수 있습니다. 또한 서비스를 브라우저에서 이용하는지 혹은 AIR를 사용하는지, 더 나아가 여러분이 개발한 AIR 애플리케이션 중 어떤 버전을 사용하는지도 알 수 있습니다.
public static function getVersion() : String { namespace ns = "http://ns.adobe.com/air/application/1.0"; use namespace ns; return NativeApplication.nativeApplication.applicationDescriptor.version.toString(); } public static function setUserAgent() : void { URLRequestDefaults.userAgent += " " + NativeApplication.nativeApplication.applicationID + "/" + getVersion(); }변경된 user agent는 다음과 같습니다.
Mozilla/5.0 (Windows; U; en-US) AppleWebKit/523+ (KHTML, like Gecko) AdobeAIR/1.1 MyApplicationId/1.0“MyApplicationId/1.0”이 AIR의 기본 user agent에 추가되었습니다. 이 값은 AIR application descriptor에서 가져왔습니다. 이런 방법으로 어떤 버전의 애플리케이션이 배포되었는지, Flex/웹사이트 사용자와 AIR/desktop 사용자의 비율은 어떻게 되는지를 파악할 수 있습니다.
이전 글 : 프레임워크의 단순함이 함정을 감춘다?
다음 글 : 구글 네이티브 클라이언트: 판도변화 아니면 실패작?
최신 콘텐츠