php エディターの Xigua が、「アンマーシャリングに失敗しました」に関する質問を共有します。 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) }
アンマーシャリングしようとしましたが、次のエラーが発生しました:
リーリー誰か助けてくれませんか? Thanks
0x020105
は整数 5 をエンコードします (https://www.php.cn/link/8ae7733f9bc11275e8d0a0fdabe5be0a を参照)。整数フィールドを持つ構造体ではなく整数にアンマーシャリングする必要があります:
および SimpleStruct{Value: 5}
は 0x3003020105
:
以上がasn のアンマーシャリングに失敗しましたの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。