Tutorial 22 Feb 2026 อ่าน 10 นาที

การเข้ารหัส Base64 อธิบาย: คืออะไร ทำงานอย่างไร และใช้เมื่อไหร่

คู่มือที่ครอบคลุมเกี่ยวกับการเข้ารหัส Base64: เข้าใจอัลกอริทึม เรียนรู้กรณีการใช้งานทั่วไป เช่น data URI, ไฟล์แนบอีเมล และ API token และรู้ว่าเมื่อไหร่ Base64 เป็นตัวเลือกที่เหมาะสม

Base64 Encoding Explained - Visual Guide

การเข้ารหัส Base64 คืออะไร?

Base64 เป็นรูปแบบการเข้ารหัสจากไบนารีเป็นข้อความที่แปลงข้อมูลไบนารีเป็นลำดับอักขระ ASCII ที่พิมพ์ได้ ชื่อ "Base64" มาจากข้อเท็จจริงที่ว่ามันใช้ชุดอักขระ 64 ตัวเพื่อแสดงข้อมูล อักขระ 64 ตัวเหล่านี้ประกอบด้วยตัวอักษรพิมพ์ใหญ่ (A-Z), ตัวอักษรพิมพ์เล็ก (a-z), ตัวเลข (0-9) และอักขระเพิ่มเติมอีก 2 ตัว โดยทั่วไปคือ + และ / โดยมี = ใช้เป็นอักขระเติมเต็ม

Base64 ถูกออกแบบขึ้นเพื่อให้สามารถส่งข้อมูลไบนารีผ่านช่องทางที่รองรับเฉพาะเนื้อหาข้อความอย่างน่าเชื่อถือ คิดว่ามันเป็นตัวแปลภาษาสากล: มันรับลำดับไบต์ใดก็ได้ ไม่ว่าจะเป็นภาพ เอกสาร หรือข้อมูลที่เข้ารหัสลับ และแปลงเป็นสตริงของอักขระที่สามารถเดินทางอย่างปลอดภัยผ่านโปรโตคอลข้อความ เช่น อีเมล (SMTP), HTML, CSS, JSON และ XML

การเข้ารหัสนี้ถูกกำหนดไว้ใน RFC 4648 ซึ่งกำหนดมาตรฐานตัวอักษรการเข้ารหัส Base หลายแบบ ตัวแปรที่พบบ่อยที่สุดบนเว็บคือตัวอักษร Base64 มาตรฐาน แต่ก็มีตัวแปรที่ปลอดภัยสำหรับ URL ซึ่งแทนที่ + ด้วย - และ / ด้วย _ เพื่อหลีกเลี่ยงข้อขัดแย้งกับอักขระสงวนของ URL

อัลกอริทึม Base64 ทำงานอย่างไร

การเข้าใจอัลกอริทึมเบื้องหลัง Base64 ช่วยไขปริศนาของการแปลงที่ดูเหมือน "มหัศจรรย์" นี้ นี่คือกระบวนการทีละขั้นตอน:

ขั้นตอนที่ 1: แปลงอินพุตเป็นไบนารี

แต่ละไบต์ของข้อมูลอินพุตจะถูกแสดงเป็นเลขฐานสอง 8 บิต ตัวอย่างเช่น ข้อความ ASCII Man แสดงเป็น:

  • M = 77 ในเลขฐานสิบ = 01001101 ในเลขฐานสอง
  • a = 97 ในเลขฐานสิบ = 01100001 ในเลขฐานสอง
  • n = 110 ในเลขฐานสิบ = 01101110 ในเลขฐานสอง

เมื่อเชื่อมต่อกัน จะได้สตรีม 24 บิต: 010011010110000101101110

ขั้นตอนที่ 2: แบ่งเป็นกลุ่ม 6 บิต

แทนที่จะใช้ขอบเขตไบต์ 8 บิตตามปกติ Base64 จะแบ่งสตรีมไบนารีเป็นกลุ่มละ 6 บิต ทำไมต้อง 6 บิต? เพราะ 26 = 64 ซึ่งเท่ากับจำนวนอักขระในตัวอักษร Base64 พอดี สตรีม 24 บิตของเราจะกลายเป็นสี่กลุ่มของ 6 บิต:

  • 010011 = 19
  • 010110 = 22
  • 000101 = 5
  • 101110 = 46

ขั้นตอนที่ 3: จับคู่กับตารางอักขระ Base64

ค่า 6 บิตแต่ละค่า (0-63) จะถูกจับคู่กับอักขระเฉพาะในตัวอักษร Base64:

ช่วงค่าอักขระ
0-25A-Z
26-51a-z
52-610-9
62+
63/

นำไปใช้กับค่าของเรา: 19 = T, 22 = W, 5 = F, 46 = u ดังนั้น Man จะถูกเข้ารหัสเป็น TWFu

ขั้นตอนที่ 4: การจัดการ Padding

เมื่อความยาวอินพุตไม่ใช่ผลคูณของ 3 ไบต์ สตรีมไบนารีจะไม่สามารถแบ่งเป็นกลุ่ม 6 บิตได้เท่าๆ กัน ในกรณีนี้ จะเพิ่มบิตศูนย์เพื่อเติมเต็มกลุ่ม 6 บิตสุดท้าย และเพิ่มอักขระเติมเต็ม = ในเอาต์พุตเพื่อระบุจำนวนไบต์พิเศษที่ถูกเพิ่ม:

  • อินพุต 1 ไบต์ สร้างอักขระ Base64 2 ตัว + padding ==
  • อินพุต 2 ไบต์ สร้างอักขระ Base64 3 ตัว + padding =
  • อินพุต 3 ไบต์ สร้างอักขระ Base64 4 ตัว โดยไม่มี padding

ตัวอย่างเช่น การเข้ารหัสเฉพาะ Ma (2 ไบต์) จะได้ TWE= และการเข้ารหัสเฉพาะ M (1 ไบต์) จะได้ TQ==

กรณีการใช้งานทั่วไปของการเข้ารหัส Base64

การเข้ารหัส Base64 ปรากฏในหลายด้านของการพัฒนาเว็บสมัยใหม่และวิศวกรรมซอฟต์แวร์ ต่อไปนี้คือกรณีที่สำคัญที่สุด:

1. Data URI ใน HTML และ CSS

Data URI ช่วยให้คุณฝังไฟล์โดยตรงใน HTML หรือ CSS โดยใช้การเข้ารหัส Base64 แทนที่จะทำคำขอ HTTP แยกต่างหากสำหรับภาพขนาดเล็ก คุณสามารถรวมมันไว้แบบอินไลน์ได้:

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA..." />

สิ่งนี้มีประโยชน์อย่างยิ่งสำหรับไอคอนขนาดเล็กและภาพตกแต่งที่การลดคำขอ HTTP ช่วยปรับปรุงประสิทธิภาพการโหลดหน้า อย่างไรก็ตาม Base64 เพิ่มขนาดข้อมูลประมาณ 33% ดังนั้นเทคนิคนี้เหมาะที่สุดสำหรับไฟล์ที่มีขนาดต่ำกว่า 2-3 KB คุณสามารถใช้ ตัวแปลงภาพเป็น Base64 ของเราเพื่อสร้าง data URI อย่างรวดเร็วจากไฟล์ภาพใดก็ได้

2. ไฟล์แนบอีเมล (MIME)

การใช้งานดั้งเดิมและอาจเป็นการใช้งานที่สำคัญที่สุดทางประวัติศาสตร์ของ Base64 คือในอีเมล โปรโตคอล SMTP ถูกออกแบบมาเพื่อส่งข้อความ ASCII 7 บิต ซึ่งหมายความว่าไฟล์ไบนารี เช่น ภาพ, PDF และเอกสาร ไม่สามารถส่งโดยตรงได้ MIME (Multipurpose Internet Mail Extensions) ใช้ Base64 เพื่อเข้ารหัสไฟล์แนบเหล่านี้เพื่อให้สามารถส่งผ่านเซิร์ฟเวอร์อีเมลได้อย่างปลอดภัยโดยไม่เสียหาย

3. Token การยืนยันตัวตน API

HTTP Basic Authentication เข้ารหัสคู่ ชื่อผู้ใช้:รหัสผ่าน ใน Base64 และส่งในส่วนหัว Authorization:

Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=

สิ่งสำคัญคือต้องเข้าใจว่านี่คือการเข้ารหัส ไม่ใช่การเข้ารหัสลับ ใครก็ตามที่ดักจับส่วนหัวนี้สามารถถอดรหัสได้ทันที นี่คือเหตุผลที่ Basic Authentication ต้องใช้ผ่าน HTTPS เสมอ

4. JSON Web Tokens (JWT)

JWT เป็นหนึ่งในการใช้งาน Base64 ที่พบบ่อยที่สุดในการพัฒนาเว็บสมัยใหม่ JWT ประกอบด้วยสามส่วนที่เข้ารหัส Base64URL คั่นด้วยจุด: ส่วนหัว, เนื้อหา และลายเซ็น ตัวอย่างเช่น:

eyJhbGciOiJIUzI1NiJ9.eyJ1c2VyIjoiam9obiJ9.xyz123...

ส่วนหัวและเนื้อหาเป็นออบเจ็กต์ JSON ที่เข้ารหัส Base64URL ซึ่งใครก็ตามสามารถถอดรหัสได้ ลายเซ็นเป็นสิ่งที่ให้การตรวจสอบความสมบูรณ์ คุณสามารถตรวจสอบและถอดรหัส JWT โดยใช้ เครื่องมือถอดรหัส JWT ของเราหรือสร้าง token ทดสอบด้วย ตัวสร้าง JWT

5. การเก็บข้อมูลไบนารีใน JSON และ XML

JSON และ XML เป็นรูปแบบข้อความที่ไม่รองรับข้อมูลไบนารีโดยกำเนิด เมื่อคุณต้องการรวมเนื้อหาไบนารี เช่น คีย์การเข้ารหัสลับ ภาพขนาดเล็ก หรือใบรับรอง การเข้ารหัส Base64 เป็นแนวทางมาตรฐาน API จำนวนมากส่งคืนข้อมูลไบนารีเป็นสตริงที่เข้ารหัส Base64 ภายในการตอบกลับ JSON

6. การเข้ารหัสข้อมูลใน URL

ในขณะที่ Base64 มาตรฐานใช้อักขระที่สงวนไว้ใน URL (+, /, =) ตัวแปรที่ปลอดภัยสำหรับ URL (Base64URL) จะแทนที่ด้วย -, _ และเลือกที่จะลบ padding สิ่งนี้ถูกใช้อย่างกว้างขวางใน OAuth token, URL ที่ลงนาม และพารามิเตอร์สถานะ สำหรับความต้องการการเข้ารหัส URL อื่นๆ ลองดูเครื่องมือ ตัวเข้ารหัส/ถอดรหัส URL ของเรา

Base64 ไม่ใช่การเข้ารหัสลับ

นี่เป็นหนึ่งในจุดที่สำคัญที่สุดที่ต้องเข้าใจ และเป็นความผิดพลาดที่แม้แต่นักพัฒนาที่มีประสบการณ์ก็ยังทำได้: การเข้ารหัส Base64 ไม่ใช่กลไกด้านความปลอดภัย มันไม่ให้ความเป็นส่วนตัวใดๆ เลย

นี่คือเหตุผลที่ความแตกต่างนี้สำคัญ:

  • การเข้ารหัส (Encoding) แปลงข้อมูลจากรูปแบบหนึ่งไปอีกรูปแบบหนึ่งเพื่อความเข้ากันได้ มันสามารถย้อนกลับได้ทั้งหมดโดยใครก็ตาม โดยไม่ต้องใช้คีย์หรือความลับ
  • การเข้ารหัสลับ (Encryption) แปลงข้อมูลเพื่อป้องกันการเข้าถึงโดยไม่ได้รับอนุญาต ต้องใช้คีย์ในการย้อนกลับและถูกออกแบบมาให้ไม่สามารถถอดรหัสได้ในทางคอมพิวเตอร์หากไม่มีคีย์นั้น

ถ้ามีคนให้สตริง Base64 แก่คุณ คุณสามารถถอดรหัสได้ทันที ไม่มีคีย์ ไม่มีรหัสผ่าน ไม่มีความลับ ลองด้วยตัวเองกับ ตัวเข้ารหัส/ถอดรหัส Base64 ของเรา: วางสตริง Base64 ใดก็ได้และคุณจะเห็นข้อมูลต้นฉบับทันที

อย่าเก็บรหัสผ่าน, คีย์ API หรือข้อมูลที่ละเอียดอ่อนโดยใช้เพียงการเข้ารหัส Base64 หากคุณต้องการการเข้ารหัสลับจริง ใช้อัลกอริทึมเช่น AES-256 คุณสามารถทดลองกับเครื่องมือ การเข้ารหัสลับ AES ของเราเพื่อดูความแตกต่างระหว่างการเข้ารหัสและการเข้ารหัสลับ สำหรับการแฮชรหัสผ่าน ให้พิจารณาใช้อัลกอริทึมเฉพาะทางเช่น bcrypt, scrypt หรือ Argon2

ค่าใช้จ่ายด้านขนาด: ทำความเข้าใจการเพิ่มขึ้น 33%

การเข้ารหัส Base64 จะเพิ่มขนาดข้อมูลเสมอ เหตุผลเป็นเรื่องคณิตศาสตร์: ทุกๆ 3 ไบต์ (24 บิต) ของอินพุตจะกลายเป็น 4 อักขระ (32 บิต) ของเอาต์พุต นั่นหมายความว่าข้อมูลที่เข้ารหัสจะใหญ่กว่าต้นฉบับประมาณ 33%

นี่คือข้อมูลอ้างอิงอย่างรวดเร็วสำหรับค่าใช้จ่ายด้านขนาด:

ขนาดต้นฉบับขนาด Base64ค่าใช้จ่ายเพิ่ม
1 KB~1.37 KB+37%
10 KB~13.3 KB+33%
100 KB~133 KB+33%
1 MB~1.33 MB+33%

ค่าใช้จ่ายนี้สำคัญที่ต้องพิจารณาเมื่อฝังภาพเป็น data URI ภาพขนาด 50 KB จะกลายเป็นประมาณ 67 KB เมื่อเข้ารหัส Base64 และสตริง Base64 นั้นจะถูกฝังโดยตรงใน HTML หรือ CSS ของคุณ ทำให้เอกสารมีขนาดใหญ่ขึ้นและอาจช้าลงในการแยกวิเคราะห์

เมื่อไหร่ไม่ควรใช้ Base64

การรู้ว่าเมื่อไหร่ควรหลีกเลี่ยง Base64 สำคัญพอๆ กับการรู้ว่าเมื่อไหร่ควรใช้ ต่อไปนี้คือสถานการณ์ทั่วไปที่ Base64 เป็นตัวเลือกที่ผิด:

  • ไฟล์ขนาดใหญ่: การฝังภาพ 500 KB เป็น data URI Base64 จะเพิ่มขนาดเอกสาร HTML ประมาณ 667 KB ทำลายความเป็นไปได้ในการแคช และทำให้การเรนเดอร์หน้าช้าลง ให้ให้บริการไฟล์ขนาดใหญ่เป็นทรัพยากรแยกต่างหาก
  • ความปลอดภัย: ตามที่กล่าวข้างต้น อย่าใช้ Base64 เป็นมาตรการรักษาความปลอดภัย มันสามารถย้อนกลับได้ง่าย
  • การเก็บข้อมูลในฐานข้อมูล: การเก็บข้อมูลไบนารีขนาดใหญ่เป็น Base64 ในคอลัมน์ฐานข้อมูลจะสิ้นเปลืองพื้นที่เก็บข้อมูลเพิ่ม 33% ใช้คอลัมน์ BLOB/BYTEA แบบดั้งเดิมแทน
  • ข้อมูลแบบสตรีมมิ่ง: Base64 ต้องการให้อินพุตทั้งหมดพร้อมใช้งานก่อนการเข้ารหัส (เนื่องจากการจัดกลุ่ม 3 ไบต์) สำหรับสถานการณ์สตรีมมิ่ง การเข้ารหัสการถ่ายโอนแบบแบ่งส่วนหรือโปรโตคอลไบนารีเป็นตัวเลือกที่ดีกว่า
  • เส้นทางที่สำคัญด้านประสิทธิภาพ: การเข้ารหัสและถอดรหัส Base64 ต้องใช้รอบ CPU ในระบบที่มีปริมาณงานสูงที่ประมวลผลหลายล้านการดำเนินการต่อวินาที ค่าใช้จ่ายเพิ่มเติมอาจมีนัยสำคัญ

ตัวอย่างการใช้งานจริงพร้อมโค้ด

ต่อไปนี้คือตัวอย่างอย่างรวดเร็วของการเข้ารหัสและถอดรหัส Base64 ในภาษาโปรแกรมยอดนิยม:

JavaScript (เบราว์เซอร์และ Node.js)

// Encoding
const encoded = btoa("Hello, World!");
console.log(encoded); // "SGVsbG8sIFdvcmxkIQ=="

// Decoding
const decoded = atob("SGVsbG8sIFdvcmxkIQ==");
console.log(decoded); // "Hello, World!"

// For Unicode strings, use TextEncoder
const encoder = new TextEncoder();
const bytes = encoder.encode("Hello");
const base64 = btoa(String.fromCharCode(...bytes));

Python

import base64

# Encoding
encoded = base64.b64encode(b"Hello, World!")
print(encoded)  # b'SGVsbG8sIFdvcmxkIQ=='

# Decoding
decoded = base64.b64decode(encoded)
print(decoded)  # b'Hello, World!'

# URL-safe variant
url_safe = base64.urlsafe_b64encode(b"Hello, World!")

PHP

// Encoding
$encoded = base64_encode("Hello, World!");
echo $encoded; // "SGVsbG8sIFdvcmxkIQ=="

// Decoding
$decoded = base64_decode($encoded);
echo $decoded; // "Hello, World!"

แน่นอนว่าคุณไม่จำเป็นต้องเขียนโค้ดทุกครั้งที่ต้องการเข้ารหัสหรือถอดรหัส Base64 เครื่องมือ Base64 ออนไลน์ ของเราจัดการให้ทันทีในเบราว์เซอร์ของคุณโดยไม่ต้องติดตั้งซอฟต์แวร์ใดๆ

การแปลงภาพเป็น Base64: ข้อดีและข้อเสีย

การแปลงภาพเป็นสตริง Base64 เป็นหนึ่งในการใช้งานที่มีการถกเถียงมากที่สุดของการเข้ารหัสนี้ ต่อไปนี้คือมุมมองที่สมดุลจากทั้งสองด้าน:

ข้อดี

  • คำขอ HTTP น้อยลง: ภาพแต่ละภาพที่ฝังเป็น data URI จะลดการเดินทางไป-กลับของเครือข่ายหนึ่งครั้ง สำหรับหน้าที่มีไอคอนขนาดเล็กจำนวนมาก สิ่งนี้สามารถปรับปรุงเวลาโหลดได้อย่างวัดได้
  • เอกสารที่สมบูรณ์ในตัวเอง: ไฟล์ HTML ที่มีภาพ Base64 เป็นไฟล์ที่สมบูรณ์ในตัวเอง สิ่งนี้มีประโยชน์สำหรับเทมเพลตอีเมล เอกสารออฟไลน์ และการส่งออกไฟล์เดียว
  • ไม่มีปัญหา CORS: ภาพอินไลน์ข้ามข้อจำกัด cross-origin ได้ทั้งหมด
  • การปรับใช้ที่ง่ายขึ้น: ไม่จำเป็นต้องจัดการไฟล์ภาพแยก เส้นทาง CDN หรือไปป์ไลน์ asset สำหรับกราฟิกขนาดเล็ก

ข้อเสีย

  • ขนาดเพิ่มขึ้น 33%: สตริงที่เข้ารหัสจะใหญ่กว่าไฟล์ไบนารีต้นฉบับเสมอ
  • ไม่มีการแคชของเบราว์เซอร์: ภาพ Base64 อินไลน์ไม่สามารถแคชแยกต่างหากได้ การโหลดหน้าแต่ละครั้งจะถ่ายโอนสตริงที่เข้ารหัสทั้งหมดอีกครั้ง
  • บล็อกการเรนเดอร์: ภาพ Base64 ใน CSS ต้องถูกดาวน์โหลดและแยกวิเคราะห์เป็นส่วนหนึ่งของ stylesheet ก่อนที่หน้าจะเรนเดอร์ได้
  • ความยากในการบำรุงรักษา: การอัปเดตภาพ Base64 อินไลน์ต้องสร้างใหม่และแทนที่สตริงที่เข้ารหัสทั้งหมด

กฎทั่วไป: ใช้ data URI Base64 สำหรับภาพที่มีขนาดต่ำกว่า 2 KB (ไอคอนขนาดเล็ก, SVG แบบง่าย, พิกเซลติดตาม 1x1) สำหรับสิ่งที่ใหญ่กว่า ให้ให้บริการภาพเป็นไฟล์แยกและปล่อยให้เบราว์เซอร์แคช คุณสามารถทดลองกับเครื่องมือแปลง ภาพเป็น Base64 และ Base64 เป็นภาพ ของเรา

ตัวแปร Base64 ที่คุณควรรู้

การเข้ารหัส Base64 ไม่ได้เหมือนกันทั้งหมด ต่อไปนี้คือตัวแปรที่สำคัญ:

  • Base64 มาตรฐาน (RFC 4648): ใช้ A-Za-z0-9+/ กับ padding = นี่คือตัวแปรที่พบบ่อยที่สุด
  • Base64URL (RFC 4648 ส่วนที่ 5): ใช้ A-Za-z0-9-_ แทน +/ จำเป็นสำหรับ URL ชื่อไฟล์ และ token ใช้ใน JWT
  • MIME Base64 (RFC 2045): ตัวอักษรเดียวกับมาตรฐานแต่แทรกการขึ้นบรรทัดใหม่ทุก 76 อักขระ ใช้ในไฟล์แนบอีเมล
  • Base32: ใช้ตัวอักษร 32 ตัว มีประสิทธิภาพด้านพื้นที่น้อยกว่าแต่ไม่คำนึงถึงตัวพิมพ์ใหญ่-เล็ก มีประโยชน์ในบริบทที่การคำนึงถึงตัวพิมพ์เป็นปัญหา (เช่น คีย์ลับ TOTP)

สรุปและประเด็นสำคัญ

การเข้ารหัส Base64 เป็นเครื่องมือพื้นฐานในชุดเครื่องมือของนักพัฒนาทุกคน ต่อไปนี้คือประเด็นสำคัญที่ควรจำ:

  • Base64 แปลงข้อมูลไบนารีเป็นข้อความโดยใช้ตัวอักษร 64 ตัว สร้างเอาต์พุตที่ใหญ่กว่าอินพุต 33%
  • ทำงานโดยแบ่งข้อมูลไบนารีเป็นกลุ่ม 6 บิตและจับคู่แต่ละกลุ่มกับอักขระที่พิมพ์ได้
  • การใช้งานทั่วไป ได้แก่ data URI, ไฟล์แนบอีเมล, JWT token, การยืนยันตัวตน API และการฝังข้อมูลไบนารีใน JSON/XML
  • Base64 เป็นการเข้ารหัส ไม่ใช่การเข้ารหัสลับ อย่าใช้เป็นมาตรการรักษาความปลอดภัย
  • ใช้ Base64 สำหรับไฟล์ขนาดเล็กและการขนส่งข้อมูล หลีกเลี่ยงสำหรับไฟล์ขนาดใหญ่ ความปลอดภัย และเส้นทางที่สำคัญด้านประสิทธิภาพ
  • ตัวแปรที่ปลอดภัยสำหรับ URL (Base64URL) แทนที่อักขระที่เป็นปัญหาสำหรับการใช้ใน URL และ token
เคล็ดลับ: บุ๊กมาร์ก ตัวเข้ารหัส/ถอดรหัส Base64 ของเราสำหรับงานเข้ารหัสและถอดรหัสอย่างรวดเร็ว ทำงานทั้งหมดในเบราว์เซอร์ของคุณ ดังนั้นข้อมูลของคุณจะไม่ออกจากอุปกรณ์ของคุณ
คำเตือนด้านความปลอดภัย: หากคุณต้องการปกป้องข้อมูลที่ละเอียดอ่อน ใช้เครื่องมือเข้ารหัสลับที่เหมาะสม เช่น เครื่องมือ การเข้ารหัสลับ AES ของเรา ไม่ใช่การเข้ารหัส Base64 สำหรับการสร้างรหัสผ่านที่ปลอดภัย ลองใช้ ตัวสร้างรหัสผ่าน
ลองใช้ตัวเข้ารหัส Base64 ฟรีของเรา

เข้ารหัสและถอดรหัสข้อความหรือไฟล์เป็น Base64 ทันทีในเบราว์เซอร์ของคุณ ไม่มีข้อมูลถูกส่งไปยังเซิร์ฟเวอร์ใดๆ