អ៊ិនកូដច្រក SOCKS5 ក្នុង Go ជាពីរបៃ big-endian
ប្រើជំនួយការ binary.BigEndian របស់ Go សម្រាប់វាលច្រក SOCKS5 ជំនួសឱ្យការកាត់ខ្សែអក្សរគោលពីរដែលមានប្រវែងអថេរ។
វាលច្រក SOCKS5 គឺជាបៃគ្មានសញ្ញាពីរតាមលំដាប់បៃបណ្តាញ៖ បៃសំខាន់បំផុតមកមុន។ ក្នុង Go សូមអ៊ិនកូដ uint16 ដែលបានផ្ទៀងផ្ទាត់រួចហើយដោយផ្ទាល់៖
var field [2]byte
binary.BigEndian.PutUint16(field[:], port)នាំចូល encoding/binary។ សម្រាប់ច្រក 1080 បៃគោលដប់ប្រាំមួយដែលទទួលបានគឺ 04 38។ សម្រាប់ច្រក 4 ពួកវាគឺ 00 04។ សូន្យនៅខាងមុខគឺជាផ្នែកមួយនៃវាលដែលមានទទឹងថេរ។
ប្រសិនបើធាតុបញ្ចូលចាប់ផ្តើមជាចំនួនគត់ធំជាង ឬខ្សែអក្សរ សូមផ្ទៀងផ្ទាត់ជួរលេខរបស់វាមុនពេលបំប្លែងទៅ uint16។ ការបំប្លែងអាចបោះបង់ប៊ីតខ្ពស់ ជំនួសឱ្យការរាយការណ៍តម្លៃក្រៅជួរ។
ក្នុងការឆ្លើយតប SOCKS5 សូមធ្វើសេរៀល BND.PORT គឺ វាលច្រកចងរបស់ម៉ាស៊ីនមេ។ កុំចម្លងច្រកគោលដៅដែលបានស្នើទៅក្នុងវាលនោះ ដោយគ្រាន់តែថាទាំងពីរកាន់បៃពីរ។ ដាក់វាលដែលបានអ៊ិនកូដបន្ទាប់ពីអាសយដ្ឋាននៃការឆ្លើយតប ដែលប្រវែងរបស់វាអាស្រ័យលើ ATYP។