เข้าถึงเซิร์ฟเวอร์ภายในและอินสแตนซ์ของ Chrome ด้วยการส่งต่อพอร์ต

Meggin Kearney
Meggin Kearney
Sofia Emelianova
Sofia Emelianova

คุณใช้การส่งต่อพอร์ตเพื่อทำสิ่งต่อไปนี้ได้

  • กรณีที่ 1 แก้ไขข้อบกพร่องของแท็บที่เปิดในอินสแตนซ์ Chrome อื่น
  • กรณี 2 โฮสต์เว็บไซต์ในเว็บเซิร์ฟเวอร์ของเครื่องสำหรับพัฒนา จากนั้นเข้าถึงเนื้อหาจากอุปกรณ์ Android ผ่านสาย USB

ในกรณีที่ 2 การส่งต่อพอร์ตจะทำงานผ่านพอร์ต TCP ที่กำลังฟังอยู่บนอุปกรณ์ Android ซึ่งแมปกับพอร์ต TCP ในเครื่องพัฒนาซอฟต์แวร์ของคุณ การรับส่งข้อมูลระหว่างพอร์ตจะเดินทางผ่านการเชื่อมต่อ USB ระหว่างอุปกรณ์ Android และเครื่องพัฒนาซอฟต์แวร์ ดังนั้นการเชื่อมต่อจะไม่ขึ้นอยู่กับการกำหนดค่าเครือข่ายของคุณ

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

ตั้งค่าการส่งต่อพอร์ต

ทำตามขั้นตอนถัดไปโดยขึ้นอยู่กับกรณีของคุณ

กรณีที่ 1: ตั้งค่าการส่งต่อพอร์ตไปยังอินสแตนซ์ Chrome อื่น

  1. เรียกใช้อินสแตนซ์ Chrome อื่นด้วยพารามิเตอร์ --remote-debugging-port=PORT เช่น

    MacOS

    open -a "Google Chrome" --args --remote-debugging-port=PORT

    Windows

    start chrome --remote-debugging-port=PORT

    Linux

    google-chrome --remote-debugging-port=PORT
  2. ในอินสแตนซ์ Chrome คุณกำลังแก้ไขข้อบกพร่องด้วยสิ่งต่อไปนี้

    1. เปิด chrome://inspect/#devices
    2. ตรวจสอบว่าได้เลือก ช่องทำเครื่องหมาย Discover network targets แล้ว
    3. คลิกกำหนดค่าข้างช่องทำเครื่องหมาย
    4. ในการตั้งค่าการค้นพบเป้าหมาย ให้ป้อน localhost:PORT เลือก ช่องทำเครื่องหมาย เปิดใช้การส่งต่อพอร์ต แล้วคลิกเสร็จสิ้น

      หน้าต่างการตั้งค่าการค้นพบเป้าหมาย

    5. เมื่อกลับไปที่อุปกรณ์ คุณจะเห็นเป้าหมายระยะไกลใหม่ คลิกตรวจสอบใต้แท็บที่ต้องการแก้ไขข้อบกพร่อง

      ลิงก์ตรวจสอบข้างแท็บบนเป้าหมายระยะไกล

  3. หน้าต่างเครื่องมือสำหรับนักพัฒนาเว็บในโหมดอุปกรณ์จะเปิดขึ้น ในแถบที่อยู่ด้านบน คุณจะป้อนที่อยู่ของเว็บไซต์ที่ต้องการแก้ไขข้อบกพร่องได้

    เครื่องมือสำหรับนักพัฒนาเว็บในโหมดอุปกรณ์

  4. คุณสามารถเปิด/ปิดวิธีการป้อนข้อมูลได้จากข้างแถบที่อยู่

เคส 2: ตั้งค่าการส่งต่อพอร์ตผ่าน USB สําหรับอุปกรณ์ Android

  1. ตั้งค่าการแก้ไขข้อบกพร่องระยะไกลระหว่างเครื่องสำหรับพัฒนาซอฟต์แวร์กับอุปกรณ์ Android เมื่อทำเสร็จแล้ว คุณจะเห็นอุปกรณ์ Android ของคุณในรายการ

    อุปกรณ์ Android ในรายการ

  2. ตรวจสอบว่าได้เลือกช่องทำเครื่องหมาย Discover USB แล้ว

  3. คลิกการส่งต่อพอร์ตที่อยู่ถัดจากช่องทำเครื่องหมาย

  4. ในการตั้งค่าการส่งต่อพอร์ต ระบบจะตั้งค่า localhost:8080 โดยค่าเริ่มต้น เลือกเปิดใช้การส่งต่อพอร์ต

    การตั้งค่าการส่งต่อพอร์ต

  5. หากต้องการตั้งค่าพอร์ตอื่นๆ โปรดทำตามขั้นตอนถัดไป หรือข้ามขั้นตอนและคลิกเสร็จสิ้น

  6. ในช่องข้อความพอร์ตทางด้านซ้าย ให้ป้อนหมายเลขพอร์ตที่คุณต้องการให้เข้าถึงเว็บไซต์ได้ในอุปกรณ์ Android เช่น หากต้องการเข้าถึงเว็บไซต์จาก localhost:5000 ให้ป้อน 5000

  7. ในช่องข้อความที่อยู่ IP และพอร์ตทางด้านขวา ให้ป้อนที่อยู่ IP หรือชื่อโฮสต์ที่เว็บไซต์ของคุณทํางานอยู่ในเว็บเซิร์ฟเวอร์ของเครื่องที่ใช้พัฒนา ตามด้วยหมายเลขพอร์ต ตัวอย่างเช่น หากเว็บไซต์กำลังทำงานบน localhost:5000 คุณจะต้องป้อน localhost:5000

  8. คลิกเสร็จสิ้น

การส่งต่อพอร์ตได้รับการตั้งค่าแล้ว คุณจะเห็นสัญญาณบอกสถานะของการกําหนดค่าการกําหนดค่าพอร์ตที่ด้านบนและข้างชื่ออุปกรณ์

สถานะการส่งต่อพอร์ต

หากต้องการดูเนื้อหา ให้เปิด Chrome ในอุปกรณ์ Android แล้วไปที่พอร์ต localhost ที่ระบุในช่องพอร์ตอุปกรณ์ ตัวอย่างเช่น หากคุณป้อน 5000 ในช่อง คุณจะต้องไปที่ localhost:5000

แมปกับโดเมนท้องถิ่นที่กำหนดเอง

การแมปโดเมนที่กำหนดเองจะช่วยให้คุณดูเนื้อหาในอุปกรณ์ Android จากเว็บเซิร์ฟเวอร์ในเครื่องการพัฒนาที่ใช้โดเมนที่กำหนดเองได้

เช่น สมมติว่าเว็บไซต์ใช้ไลบรารี JavaScript ของบุคคลที่สามซึ่งใช้งานได้เฉพาะในโดเมน chrome.devtools ในรายการที่อนุญาตเท่านั้น คุณจึงสร้างรายการในไฟล์ hosts บนเครื่องสำหรับพัฒนาซอฟต์แวร์เพื่อแมปโดเมนนี้กับ localhost (เช่น 127.0.0.1 chrome.devtools) หลังจากตั้งค่าการแมปโดเมนที่กำหนดเองและการส่งต่อพอร์ตแล้ว คุณจะดูเว็บไซต์ในอุปกรณ์ Android ได้ที่ URL chrome.devtools

ตั้งค่าการส่งต่อพอร์ตไปยังพร็อกซีเซิร์ฟเวอร์

หากต้องการจับคู่โดเมนที่กำหนดเอง คุณต้องเรียกใช้พร็อกซีเซิร์ฟเวอร์ในเครื่องการพัฒนา ตัวอย่างพร็อกซีเซิร์ฟเวอร์ ได้แก่ Charles, Squid และ Fiddler

วิธีตั้งค่าการส่งต่อพอร์ตไปยังพร็อกซี

  1. เรียกใช้พร็อกซีเซิร์ฟเวอร์และจดบันทึกพอร์ตที่พร็อกซีใช้อยู่

  2. ตั้งค่าการส่งต่อพอร์ตไปยังอุปกรณ์ Android สําหรับช่องที่อยู่ในเครื่อง ให้ป้อน localhost: ตามด้วยพอร์ตที่เซิร์ฟเวอร์พร็อกซี่ทํางานอยู่ ตัวอย่างเช่น หากคำสั่งดังกล่าวกำลังทำงานบนพอร์ต 8000 คุณจะต้องป้อน localhost:8000 ในช่องพอร์ตอุปกรณ์ ให้ป้อนหมายเลขที่ต้องการให้อุปกรณ์ Android ฟัง เช่น 3333

กำหนดการตั้งค่าพร็อกซีในอุปกรณ์

ถัดไป คุณต้องกำหนดค่าอุปกรณ์ Android ให้สื่อสารกับเซิร์ฟเวอร์พร็อกซี

  1. บนอุปกรณ์ Android ให้ไปที่การตั้งค่า > Wi-Fi
  2. กดชื่อเครือข่ายที่เชื่อมต่ออยู่ค้างไว้

  3. แตะแก้ไขเครือข่าย

  4. แตะตัวเลือกขั้นสูง การตั้งค่าพร็อกซีจะปรากฏขึ้น

  5. แตะเมนูพร็อกซี แล้วเลือกกำหนดเอง

  6. ป้อน localhost ในช่องชื่อโฮสต์พร็อกซี

  7. สำหรับช่องพอร์ตพร็อกซี ให้ป้อนหมายเลขพอร์ตที่คุณป้อนสำหรับพอร์ตอุปกรณ์ในส่วนก่อนหน้า

  8. แตะบันทึก

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

ตอนนี้คุณสามารถเข้าถึงโดเมนที่กำหนดเองในอุปกรณ์ Android ได้เช่นเดียวกับในเครื่องสำหรับพัฒนาซอฟต์แวร์

หากเว็บเซิร์ฟเวอร์ของคุณใช้พอร์ตที่ไม่เป็นไปตามมาตรฐาน อย่าลืมระบุพอร์ตเมื่อขอเนื้อหาจากอุปกรณ์ Android ตัวอย่างเช่น หากเว็บเซิร์ฟเวอร์ของคุณกำลังใช้โดเมนที่กำหนดเอง chrome.devtools บนพอร์ต 7331 เมื่อคุณดูเว็บไซต์จากอุปกรณ์ Android คุณควรใช้ URL chrome.devtools:7331