รับข้อมูลตำแหน่งทางภูมิศาสตร์ของที่อยู่ IP ใน Windows 10
ในบทความที่แล้ว เราเห็น วิธีรับข้อมูลตำแหน่งทางภูมิศาสตร์สำหรับที่อยู่ IP โดยใช้ bash, curl และ jq ใน Linux เรามาดูกันว่าจะทำเช่นเดียวกันได้อย่างไรใน Windows 10 เราสามารถใช้ Bash บน Linux หรือ PowerShell เพื่อจุดประสงค์เดียวกัน
โฆษณา
อีกครั้ง เราจะใช้บริการฟรี "freegeoip.net" เป็นแหล่งข้อมูลตำแหน่งทางภูมิศาสตร์ ให้บริการ HTTP API สาธารณะเพื่อค้นหาตำแหน่งทางภูมิศาสตร์ของที่อยู่ IP ใช้ฐานข้อมูลของที่อยู่ IP ที่เชื่อมโยงกับเมืองต่างๆ พร้อมกับข้อมูลที่เกี่ยวข้องอื่นๆ เช่น เขตเวลา ละติจูด และลองจิจูด สิ่งนี้มีประโยชน์มาก
รับข้อมูลตำแหน่งทางภูมิศาสตร์ของที่อยู่ IP ใน Windows 10 โดยใช้ Bash บน Ubuntu
หากคุณติดตั้ง Bash บน Linux คุณสามารถใช้ในกรณีนี้ คุณต้องติดตั้ง jq console JSON parser ทำดังนี้.
- เปิด Bash บน Ubuntu คุณอาจต้องติดตั้งก่อน ดูบทความต่อไปนี้:
วิธีเปิดใช้งาน Ubuntu Bash ใน Windows 10เคล็ดลับ: คุณสามารถ เพิ่ม Bash บน Ubuntu ลงในเมนูบริบทของ Explorer เพื่อเปิดในโฟลเดอร์ที่ต้องการได้อย่างรวดเร็ว - พิมพ์คำสั่งต่อไปนี้:
sudo apt-get ติดตั้ง jq
แอปพลิเคชันจะถูกติดตั้ง:
- ตอนนี้คุณสามารถใช้คำสั่งต่อไปนี้:
ขด http://freegeoip.net/json/119.94.116.145>tmpjson.txt && jq '.' tmpjson.txt && rm tmpjson.txt
ผลลัพธ์:
เป็นคำสั่งเดียวกันกับ I ใช้ในสภาพแวดล้อม Linux ดั้งเดิมอย่างไรก็ตาม มีข้อผิดพลาดอยู่ ใน Windows 10 Bash บน Ubuntu ได้หยุดรองรับเอาต์พุตไปป์ไลน์ ด้วยเหตุนี้ คุณจึงไม่สามารถรวมเครื่องมือหลายตัวเพื่อทำงานร่วมกันได้อย่างถูกต้อง
ดังนั้นฉันจึงใช้ไฟล์ชั่วคราว 'tmpjson.txt' ซึ่งเก็บการตอบสนองของเซิร์ฟเวอร์แล้วถูกลบ
หากคุณไม่ใช่ผู้ใช้ Bash บน Ubuntu คุณสามารถใช้ PowerShell แทนได้
รับข้อมูลตำแหน่งทางภูมิศาสตร์ของที่อยู่ IP ใน Windows 10 โดยใช้ PowerShell
เปิดอินสแตนซ์ใหม่ของ PowerShell ตามที่อธิบายไว้ที่นี่: ทุกวิธีในการเปิด PowerShell ใน Windows 10
แทนที่จะใช้เครื่องมือ curl คุณสามารถใช้ cmdlet Invoke-RestMethod. มันถูกสร้างขึ้นเป็นพิเศษเพื่อทำงานกับบริการ REST (Representational State Transfer) ซึ่งมักจะส่งคืนข้อมูล JSON หรือ XML
ไวยากรณ์มีดังนี้:
เรียกใช้-RestMethod -Method Get -Uri http://freegeoip.net/json/119.94.116.145
ผลลัพธ์ของคำสั่งจะเป็นดังนี้:
คุณไม่จำเป็นต้องนำการจัดรูปแบบเพิ่มเติมไปใช้กับคำสั่งด้วยซ้ำ มันถูกแสดงไว้อย่างดีในผลลัพธ์
แค่นั้นแหละ.