php 편집기 Xigua는 "unmarshalling asn failed"에 대한 질문을 여러분과 공유하기 위해 왔습니다. 네트워크 통신에서 ASN(Autonomous System Number)은 자율 시스템을 식별하는 데 사용되는 번호입니다. 그러나 ASN을 그룹 해제할 때 그룹 해제가 실패하는 경우가 있습니다. 이는 잘못된 ASN 인코딩 형식, 손상된 ASN 패킷 또는 호환되지 않는 파서로 인해 발생할 수 있습니다. 이 기사에서는 모든 사람이 이 문제를 더 잘 이해하고 해결할 수 있도록 ASN 역마샬링이 실패하는 이유와 해결 방법을 논의합니다.
package main import ( "encoding/asn1" "fmt" ) type SimpleStruct struct { Value int } func main() { berBytes := []byte{0x02, 0x01, 0x05} var simpleStruct SimpleStruct _, err := asn1.Unmarshal(berBytes, &simpleStruct) if err != nil { fmt.Println("Error:", err) return } fmt.Printf("Decoded value: %d\n", simpleStruct.Value) }
정렬 해제를 시도했지만 다음 오류가 발생했습니다.
으아아아누구든지 도와줄 수 있나요? 감사합니다
0x020105
은 정수 5를 인코딩하므로(https://www.php.cn/link/8ae7733f9bc11275e8d0a0fdabe5be0a 참조) 정수 필드가 있는 구조체가 아닌 정수로 마샬링 해제되어야 합니다.
그리고 SimpleStruct{Value: 5}
被编组为 0x3003020105
:
위 내용은 비정렬화 실패의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!