កំហុសនៃការអ៊ិនកូដតួអក្សរក្នុង jsoup បន្ទាប់ពីទាញយកតាមប្រូកស៊ី
ធ្វើរោគវិនិច្ឆ័យតួអក្សរច្របូកច្របល់នៅលើទំព័រដែលផ្ទុកតាមប្រូកស៊ី ដោយរក្សាព័ត៌មានអ៊ិនកូដនៃការឆ្លើយតបពេញការញែក HTML។
ទំព័រផ្ទុកតាមប្រូកស៊ី ប៉ុន្តែអក្សរមានសញ្ញាសំឡេងត្រឡប់មកវិញច្របូកច្របល់។ មុនពេលប្តូរប្រូកស៊ី ស្វែងរកកន្លែងដំបូងដែលបៃនៃការឆ្លើយតបក្លាយជា Java String។ InputStreamReader ដោយគ្មាន charset ច្បាស់លាស់អាចធ្វើការសម្រេចនោះ មុនពេល jsoup ឃើញឯកសារ។
នៅពេល jsoup គ្រប់គ្រងការទាញយក សូមរក្សាការឆ្លើយតបជាប់គ្នារហូតដល់ការញែក៖
Connection.Response response = Jsoup
.connect("https://www.example.com/catalog")
.proxy("proxy.example", 8080)
.execute();
Document page = response.parse();API នៃការឆ្លើយតបបង្ហាញព័ត៌មាន charset ដែលបានមកពី Content-Type។ វាក៏អាចទទួលយកការជំនួស charset ច្បាស់លាស់ នៅពេលអ្នកបានបញ្ជាក់ថាសេចក្តីប្រកាសរបស់ម៉ាស៊ីនមេខុស។ អាសយដ្ឋានប្រូកស៊ីតែឯងមិនប្រាប់អ្នកថាឯកសារប្រើការអ៊ិនកូដតួអក្សរណាទេ។ ប្រសិនបើអ្នកត្រូវការការប្រៀបធៀបទំព័រសាធារណៈដែលអនុញ្ញាតដោយគ្មានគណនីប្រូកស៊ី សូមជំនួសម៉ាស៊ីន HTTP និងច្រកនៃឧទាហរណ៍ដោយបេក្ខជនពី បញ្ជីប្រូកស៊ី HTTP ដោយរក្សាការត្រួតពិនិត្យអ៊ិនកូដដូចគ្នា។
ប្រសិនបើអតិថិជន HTTP ផ្សេងទៀតផ្តល់ InputStream jsoup ដែលញែកស្ទ្រីមនឹងទទួលយកឈ្មោះ charset និង URI មូលដ្ឋាន។ charset ទទេអនុញ្ញាតឱ្យមានការរកឃើញ និងឥរិយាបថបម្រុងដែលបានចងក្រង។ charset HTTP ដែលដឹង និងត្រឹមត្រូវគួរត្រូវបានផ្ទេរដោយចេតនា។ URI មូលដ្ឋានផ្តល់បរិបទសម្រាប់តំណដែលទាក់ទង។
នៅពេលបៃត្រូវបានឌិកូដខុសហើយ ការញែក String លទ្ធផលដោយ charset ផ្សេងមិនស្តារអត្ថបទដើមឡើងវិញទេ។ ត្រឡប់ទៅបៃ និងទិន្នន័យមេតានៃការឆ្លើយតប។ ក៏ប្រៀបធៀបអ្វីដែលបានទទួល៖ ទំព័រចូល ឬការបដិសេធរបស់ប្រូកស៊ីអាចជាឯកសារខុសគ្នាទាំងស្រុងពីទំព័រដែលបានស្នើ មិនមែនជាការបរាជ័យឌិកូដនៅក្នុងវាទេ។