Flex 3/AS 3에서 원격 파일이 있는지 확인하는 좋은 방법은 무엇입니까? 원격 경로 (예 : "http://example.com/somefile.exe")를 "fopen"하려고하는 PHP 방식으로 생각하고 작동하는지 확인하십시오. 나는 파일의 전부를 다운로드 할 것을 요구하지 않고있다, 나는 파일이 거기 (그리고 접근 가능한)인지 알고 싶다.Flex 3를 사용하여 원격 파일 존재 여부 확인
답변
파일로드를 시도해야 할 수 있습니다. IOError가 발생하면 파일이 존재하지 않거나 경로가 잘못되었습니다. 로드가 시작되면 진행 이벤트가 트리거되어 존재합니다. 그런 다음 나머지로드를 취소 할 수 있습니다.
또는 플래시에서 설명하는 것을 수행하는 PHP 스크립트를 호출 해보십시오. 간단한 true/false를 반환 할 수 있습니다.
파일이 존재하지 않으면 웹 서버가 404 페이지 또는 그와 비슷한 것을 반환합니다 (사실 내 경우 프론트 페이지 반환 된 URL ... 재 작성 등), 기술적으로 해당 페이지가 성공적으로 다운로드됩니다. 대안에 가까운 해결책을 찾으러 갈 것입니다. 파일이 존재하는지 여부에 관계없이 서버 측 (이 경우 PHP 사용)에서 확인하고 있습니다. 그리고 flashvars에 "파일 없음"매개 변수를 추가합니다 . 즉, 플래시 클라이언트 응용 프로그램에서 확인 작업이 실제로 수행되지는 않습니다. 나는 이것이 지금 나를 위해 충분하다고 생각한다. – Jonny
파일이 존재하는지 아닌지를 검사하는 유틸리티 클래스가 있습니다. https://github.com/eladelrom/eladlib/blob/master/EladLibFlex/src/com/elad/framework/utils/FileExistsUtil.as
그리고 구현은 다음과 같습니다 : 여기에 코드는
var fileExists:FileExistsUtil = new FileExistsUtil();
fileExists.checkFile("file.jpg",
function(eventType:String):void
{
trace(eventType);
},
function(errorType:String, text:String):void
{
trace(errorType+": "+text);
});
링크가 깨졌습니다 – Tom
링크가 github의 프로젝트 위치를 가리 키도록 수정되었습니다. –
이 내가 파일이며, 그것이 무엇 일
var urlStream:URLStream = new URLStream();
urlStream.addEventListener(Event.OPEN, streamHandler);
urlStream.addEventListener(IOErrorEvent.IO_ERROR, streamHandler);
urlStream.load(new URLRequest("SOME_FILE"));
function streamHandler(e:Event):void {
urlStream.close();
if(e.type == Event.OPEN){
trace("FILE EXISTS");
} else if(e.type == IOErrorEvent.IO_ERROR){
trace("FILE DOES NOT EXIST");
}
}
- 1. XDocument 파일 존재 여부 확인
- 2. jQuery를 사용하여 링크 존재 여부 확인
- 3. 런타임시 UI_USER_INTERFACE_IDIOM의 존재 여부 확인
- 4. Python의 멤버 존재 여부 확인
- 5. stat를 사용하여 파일 존재 여부 감지 (천천히?)
- 6. 주어진 경로의 파일 존재 여부
- 7. JMX - 프로세스 프로세스 존재 여부 확인
- 8. 상호 배타적 인 연결의 존재 여부 확인
- 9. GWT에서 클라이언트 머신의 폴더 존재 여부 확인
- 10. 가로 패널 : 위젯의 존재 여부 확인
- 11. 중첩 된 속성의 존재 여부 확인
- 12. 원격 파일 존재 문제
- 13. 목록에 존재 여부 확인 django 템플릿
- 14. ADO.NET DataRow - 열 존재 여부 확인
- 15. MySQL 테이블에서 문자열 존재 여부 확인
- 16. Foxpro : vfpoledb를 통해 테이블 존재 여부 확인
- 17. 체크 속성 존재 여부
- 18. 비 관리 코드를 사용하여 .net 런타임의 존재 여부 확인
- 19. 파일 집합에 대한 앤티 검사의 존재 여부
- 20. 메소드의 존재 여부 테스트
- 21. jdbc를 통해 고유 한 행 존재 여부 확인
- 22. Java : OTF 글꼴 사용, 특정 글꼴 존재 여부 확인
- 23. Do While 루프 - 파일 이름 생성 및 파일 존재 여부 확인
- 24. Rails 3 연결 존재 여부 확인 중 오류가 발생했습니다.
- 25. bash 스크립트에서 Python dev 파일의 존재 여부 확인
- 26. 저장 프로 시저에 삽입하기 전에 존재 여부 확인
- 27. 최대 절전 모드 : 개체 존재/변경 여부 확인
- 28. 프로젝트를 빌드하기 전에 모든 파일의 존재 여부 확인
- 29. TDD - 인터페이스의 존재 여부 테스트
- 30. 클래스의 필드 존재 여부 테스트
찾을 최적의 코드 (즉, 위의 예에서 http 링크의 끝에있는 Windows exe - 매우 이상합니다). 대답에 따라 몇 가지 옵션이 있습니다. – Simon
제 경우에는 예 http하지만 아니요, exe는 아닙니다. 아마 .mp4, .flv 등의 영화 파일이 될 것입니다. – Jonny
나는이 오래된 질문을 보면서, 이것이 내가 오늘날 물어볼 것이 아닐 것이라고 말한다. http를 말할 때 웹을 통한 파일 존재는 물론 http 프로토콜에 의해 처리되어야합니다. 즉, 404 페이지가 있으면 페이지가 존재하지 않습니다. 그리고 서버 오류, 액세스 거부 등의 다른 응답을 받으면 가장 잘 맞는 것을 처리하십시오. – Jonny