Adobe의 documentation for the AMF format은 실제로 전체 AMF 메시지의 구조를 지정하지 않는 것 같습니다. 개별 데이터 형식의 형식 만 지정합니다. 나는 그 다섯 가지를 읽었고, 실제 AMF 메시지가 포함해야 할 내용이 완전히 누락되었거나 거기에 없다. 누구든지 실제 전체 메시지 구조에 대한 문서를 알고 있습니까?AMF 메시지 구조?
답변
사양을 "간결한"것으로 설명 할 수 있습니다.
AMF 인코딩은 "유형 표시 자"라고하는 바이트를 사용합니다. 정수의 유형 마커는 값 4입니다. 정수 데이터는이 태그 바로 뒤에 오며 1-4 바이트 길이입니다. 길이는 정수 유형이 "압축"되어 0-127 값은 1 바이트 만 필요하므로 더 큰 값은 더 많은 바이트가 필요하기 때문에 다릅니다. 이 정수 형식은 사양에서 "U29"라고합니다. 우리는 단순히 정수를 통과한다면 예를 들어
, "5", 유효한 AMF 패킷이이 두 바이트 것 : 웹에서 발견 응용 프로그램에서
04 05
의 AMF 데이터는 때때로 앞에 네트워크 바이트 순서로 부호 없음 long으로 인코딩 된 길이만큼. 이러한 응용 프로그램을 관찰 한 경우
00 00 00 02 04 05
을 볼 수 있습니다. 여기에서 00 00 00 02
은 다음 AMF 데이터가 2 바이트 길이임을 나타냅니다.
this.ui = "button_press"; this.param = 5;
지금, 그것은 다음과 같은 생성자 한 후 우리는 객체를 전송 가정 - 객체 태그
2B
0A
을 - u29o-val : 봉인 된 멤버 2 개, 특성 및 데이터가있는 객체, 가능하면 동적 멤버
01
- 빈 문자열 - 익명 객체
,515,05
- 스트링 값에 의한 문자열의 길이 : 2
75 69
- 'UI'
0B
- 문자열 별 값 문자열 길이 : 5
70 61 72 61 6D
- 'PARAM'
19
- 스트링 값에 의한 문자열 길이 : 12
62 75 74 74 6F 6E 5F 70 72 65 73 73
- 'button_press'
04
- 정수
05
- 정수 값 : 5
01
- 빈 이름은 동적 빈 목록을 종료 나 이 객체를 처리합니다.
해당 패킷은 28 바이트를 차지하므로 접두어는 야생에서 발생하면 00 00 00 1C
입니다.
또 다른 가능성은 zlib에서 사용 가능한 "압축"압축을 사용하여 AMF 통신이 압축 될 수 있다는 것입니다.
이 정보가 도움이 되었기를 바랍니다. 궁금한 점이 있으면 대답 해 보겠습니다.
당신은이 AMF0 spec의 끝에 추가됩니다 메시지 구조를 리모팅을 찾고 있다면 - 제 4
또한 갈 수 있습니다 그것은 충분한 정보가 필요했다 http://en.wikipedia.org/wiki/Action_Message_Format 위키를 통해.
감사합니다. Rajesh.
- 1. XML을 사용하는 TCP 메시지 구조
- 2. Zend AMF 구현 및 AMF 프로토콜 보안
- 3. WINAPI 메시지, 메시지 계층 구조, 초기화 루틴을위한 좋은 소스
- 4. 캐싱을위한 AMF 파일 만들기
- 5. Flex AMF 오프라인 모드?
- 6. 자바 AMF 직렬화
- 7. AMF 통신은 어떻게 작동합니까?
- 8. Java의 AMF 클라이언트
- 9. 리버스 엔지니어링 AMF
- 10. AMF 본문이 비 직렬화에 놓임
- 11. 젠드 AMF 및 예외 처리
- 12. PHP를 AMF 클라이언트로 사용하기위한 제안
- 13. AMF 데이터가 플렉스 서비스로 불완전합니다.
- 14. AMF 인코딩/디코딩을위한 Java 라이브러리
- 15. 젠드 AMF 및 플래시 튜토리얼
- 16. 젠드 AMF + 젠드 웹 사이트
- 17. 런타임시 AMF 응답 수정 - 방법?
- 18. C# 계층 구조 구조
- 19. 이중 구조 구조 구현?
- 20. 구조
- 21. Ruby에서 AMF 데이터를 구문 분석하는 방법은 무엇입니까?
- 22. Java/AMF 앱에서 플러딩/DOS 공격 방지
- 23. 플래시, AMF 또는 XML 통신 중입니까?
- 24. .NET을 사용하는 Flash없이 AMF 메소드 사용
- 25. Flex RemoteObject + Zend AMF 서버 문제
- 26. flex zend amf - 다른 레이블로 결과 표시
- 27. 형식화 된 객체를 반환하는 ColdFusion/AMF Remoting
- 28. Flash Builder 4 용 Zend Amf
- 29. 플래시 - django 커뮤니케이션 - amf, xml 또는 json?
- 30. AMF 서버는 원격 공유 객체를 지원합니까?
감사합니다. 매우 유용합니다. 실제로 헤더와 겹 따옴표를 포함하여 전체 유효한 AMF 메시지에 대한 BNF 설명이있는 곳에서 실제로 사용되기를 바랬습니다. 나는 디코딩 할 때 AMFPHP가 무엇을하는지 알아보기 위해 코드를 작성했다. 거기에는 많은 내용이 실세계에 암시되지 않았다. – dirtside