2008-10-01 3 views
2

클라이언트가 데스크톱 응용 프로그램을 설치하고 로그인 한 경우 더 잘 작동하는 웹 사이트가 있다고 가정 해 보겠습니다. 그들은 설치하지 않은 경우 그들은 '경우 사용자가 클라이언트 응용 프로그램을 설치했는지 웹 사이트가 확인하는 가장 좋은 방법은 무엇입니까?

  • (쉽게 그들을 설치에 대한 링크를 찾을 수 있도록하기 위해)

    • 웹 사이트를 변경 응용 프로그램을 : 나는이 일을 할 수 있도록하고 싶습니다 몇 대의 컴퓨터에 앱을 설치하고 검색중인 컴퓨터를 결정했습니다.

    주요 브라우저에서 Windows 및 OSX에서 작동하는 것을 원합니다. Linux는 보너스입니다.

    몇 가지 생각 : 당신은 플래시가 설치되어있어 경우

    • 웹 사이트를 검색 할 수 있습니다. 그게 어떻게 작동하고 그것이 내 목표 모두에 사용될 수 있습니까?
    • 클라이언트가 localhost에서 HTTP를 제공하도록하고 로컬 ID를 가져 오기 위해 일부 javascript 요청을 수행 할 수 있습니까? Google 데스크톱 검색이 이런 식으로 한 점을 알고 있습니다. 이것은 표준적인 관행입니까?

    감사합니다.

  • 답변

    2

    응용 프로그램과 통신 할 수있는 브라우저 플러그인 (IE의 경우 activex 또는 나머지 브라우저의 경우 Netscape 플러그인)을 사용할 수 있습니다. 웹 페이지가로드되면 플러그인을 인스턴스화하려고 시도 할 수 있으며 성공하면 응용 프로그램의 프록시로 사용할 수 있습니다. 실패하면 앱이 설치되지 않았거나 플러그인이 사용자에 의해 명시 적으로 사용 중지되었습니다. 어느 쪽이든, 귀하의 웹 사이트는 그에 따라 기능을 저하시켜야합니다.

    업데이트 : 귀하의 질문에 대한 답변을 잊어 버렸 :

    1. 플래시가 바로이 방법을 수행합니다. Flash는 웹 페이지에서 만든 브라우저 플러그인입니다.
    2. 응용 프로그램/플러그인 설치시 생성 된 컴퓨터 ID를 가질 수 있으며 플러그인이 만들어지면 해당 컴퓨터 ID를 웹 페이지에 전달할 수 있습니다. 내가 주로하기 때문에 보안 고려 사항, 로컬 웹 서버를 가지고 멀리 것

      : 로컬 웹 서버를 사용하여 주제에

    . 로컬 웹 서버가 충분히 잠겨 있는지 확인하고 다른 악의적 인 웹 사이트가 XSS 취약점을 악용하여 사용자를 대신 할 수있는 취약점이 없는지 확인하기 위해서는 많은 작업이 필요합니다.

    웹 서버를 사용하면 시스템 전체 프로세스로 실행해야하거나 사용자로 실행되는 경우 여러 사용자가 응용 프로그램의 한 인스턴스에만 상호 작용할 수 있습니다. 동시에 로그온하고 실행할 수 있습니다.

    Google 데스크톱 검색은 XSS 보안 취약점 (비록 해결했지만)과 한 명의 사용자 만 시스템에서 사용할 수있는 제한 사항으로 인해 어려움을 겪었습니다. 그들은 그랬습니까?)

    0

    데스크톱 응용 프로그램 용 개발 환경을 선택할 수 있으면 Adobe에서 AIR를 확인하십시오.html/javascript, Flash 또는 Flex를 사용하여 데스크탑 응용 프로그램을 개발할 수 있습니다.

    브라우저 기반의 플래시 응용 프로그램에서 사용할 수있는 API 호출을 통해 데스크톱 기반 AIR 응용 프로그램이 설치되었는지, 어떤 버전인지 등을 확인할 수 있습니다. 웹 응용 프로그램에서 데스크탑 응용 프로그램으로 매개 변수를 전달하고 실행할 수도 있습니다.

    http://www.rogue-development.com/blog2/2008/03/interacting-with-an-air-app-from-a-browser-based-app/

    4

    당신은 (this 참조) 데스크톱 응용 프로그램에서 프로토콜을 등록 할 수 있습니다. 예를 들어 웹 사이트의 임의 데이터로 데스크톱 응용 프로그램을 여는 데 사용할 수 있습니다. 그런 다음 데스크톱 응용 프로그램에서 웹 서버에 HTTP 요청을 보내어 현재 사용중인 컴퓨터를 알려줄 수 있습니다.

    1

    웹 사이트에서 플래시가 설치되어 있는지 검색 할 수 있습니다.

    사실, 난 당신이 설치 한 브라우저의 플래시 플러그인이있는 경우 브라우저가 감지 할 수 있다고 생각하고, 웹 페이지는 브라우저가 선택할 수있는 "설치"와 "제거"옵션을 제공 할 수 있습니다.

    그렇지 않으면 웹 페이지에 코드를 넣고 사용자의 집 컴퓨터를 분석하고 웹 사이트에서 배운 것을보고 할 수있는 방법을 묻습니다.

    주요 보안 구멍?

    0

    "플래시가 설치되어 있다면 웹 사이트에서이를 감지 할 수 있습니다. 어떻게 작동하고 내 목표에 모두 사용할 수 있습니까?"- 아주 간단합니다. 브라우저가 일부 추가 파일을 렌더링하려고 시도합니다. 플래시 .swf와 같은 특정 형식은 브라우저가 설치를 찾지 못하는 것보다 다운로드를 시작하거나 해당 프로그램을 다운로드 할 수있는 옵션이 있습니다. 플래시 또한 AC_RunActiveContent.js를 사용합니다.이 js에서 알 수 있습니다. 사람들은 대개 웹 페이지에이 파일을 넣습니다.

    if (AC_FL_RunContent == 0) { 
        alert("This page requires AC_RunActiveContent.js."); 
    } else { 
        AC_FL_RunContent('codebase','http://download.macromedia.com/pub/shockwave cabs/flash swflash.cab#version=8,0,0,0','width','981','height','635','id','build5','align','middle','src','build5','quality','high','bgcolor','#ffffff','name','build5','allowscriptaccess','sameDomain','allowfullscreen','false','pluginspage','http://www.macromedia.com/go/getflashplayer','movie','build5'); //end AC code 
    } 
    
    관련 문제