2010-01-01 1 views
0

내가 플렉스 멍청한 놈 그리고 난이 HTTPService를 클래스에 대한 몇 가지 의문을 가지고,HttpService를 질문

  1. 내가 내 자신의 서버에 상주하는 파일에서 데이터를 가져 오는 데 사용할 수 또는 내가 할 수있는 URL을 과 같이 외부 사이트처럼 Google stackoverflow (심지어 api가없는 것)와 같이 다운로드 할 수 있습니까?

  2. 데스크톱 응용 프로그램인지 webapp인지 여부에 따라 httpservice가 을 다르게 동작합니까? 한마디로

, 그것은 HttpClient를 같이 행동 (libcurl에 추천하고 기계화) 또는은 (XMLHttpRequest의 같은) 제한이 있습니까 무엇입니까?

답변

3

Flex의 HTTPService 라이브러리는 Flash Player의 기본 HTTP 네트워킹 API 위에있는 편리한 API입니다. 따라서 Flash Player가 지원하는 것에 만 사용할 수 있습니다.

  1. 브라우저에는 네트워크 요청에 대해 동일한 도메인/동일 출처 정책이 있습니다. 따라서 foo.com에서로드 된 응용 프로그램은 foo.com에서만 데이터를 가져올 수 있습니다. 그러나 Flash Player는 크로스 도메인 정책 파일을 사용하여이 문제를 해결할 수있는 메커니즘을 제공합니다. 그들은 위험하지만 더 좋은 해결책은 BlazeDS 나 Apache 같은 프록시를 사용하여 같은 출처 정책을 위반하지 않는 것입니다.

  2. Adobe AIR 및 Flash Player의 HTTP 네트워킹 API에는 약간의 차이가 있습니다. 가장 큰 차이점 중 하나는 Adobe AIR 응용 프로그램이 동일한 출처 정책을 갖고 있지 않다는 것입니다.

+0

답변을 주셔서 감사합니다. 정확하게 알아야 할 것은 무엇입니까? – foobar

-1

XmlHttpRequest와 비슷합니다. 사실 그것은 훨씬 더 제한적입니다.

Flex의 HTTP 지원은 끔찍합니다. 우리 회사에서는이를 "장애인"고객으로 분류합니다.

+0

자세한 내용을 제공 할 수 있습니까? Flash Player의 HTTP 제한은 주로 브라우저 제한 (동일 도메인) 또는 NSPAPI 제한 (PUT, DELETE 등 없음)으로 인해 발생합니다. –

+0

- 요청 헤더 '인증'을 보낼 수 없으므로 HTTP 기본 인증을 사용할 수 없습니다. - 응답의 상태 코드가 200 이외의 값인 경우 - 201, 202 또는 204조차도 응답이 처리됩니다. 오류로 요청이 실패한 것으로 간주되고 응답 헤더 또는 응답 본문에 액세스하는 것이 어렵거나 불가능합니다. - 일반적으로 응답 헤더에 액세스하는 것이 어렵거나 불가능합니다 ... 이것은 내 머리 꼭대기에 있습니다. 더있다. –

0
  1. 예 HttpService를 사용하여 자신의 서버에서 데이터를 가져올 수 있습니다.

  2. XMLHttpRequest와 마찬가지로 요청을 비동기 적으로 보냅니다. 동기 동작 또는 HttpClient를 복제하기 위해 ActionScript의 NetConnection 클래스를 사용할 수 있다고 생각합니다.

+0

플래시에는 동기 IO API가 없습니다. –

+0

이 하나에 저를 정정 해 주셔서 감사합니다. – Rajat