Простые способы получить IP-адрес в формате JSON

Получение IP-адреса в формате JSON является общим требованием во многих сценариях программирования. В этой статье блога мы рассмотрим несколько методов выполнения этой задачи, приведя попутно примеры кода. Независимо от того, новичок вы или опытный разработчик, эти подходы пригодятся вам для получения IP-адресов в простом и структурированном формате JSON.

Метод 1. Использование API

Один из самых простых способов получить IP-адрес в формате JSON — использовать общедоступный API геолокации IP. Эти API предоставляют информацию об IP-адресе пользователя, включая его географическое местоположение. Вот пример использования ipify API:

import requests
response = requests.get("https://api.ipify.org?format=json")
ip_data = response.json()
print(ip_data)

Метод 2. Использование сетевого интерфейса

Если вы работаете с сетевым интерфейсом напрямую, вы можете извлечь IP-адрес программным способом. Вот пример использования модуля Python socket:

import socket
hostname = socket.gethostname()
ip_address = socket.gethostbyname(hostname)
ip_data = {"ip_address": ip_address}
print(ip_data)

Метод 3. Извлечение IP-адреса из заголовков HTTP

При разработке веб-приложений вы можете извлечь IP-адрес клиента из заголовков HTTP. Вот пример на Python с использованием платформы Flask:

from flask import Flask, request
import json
app = Flask(__name__)
@app.route('/')
def get_client_ip():
    ip_address = request.remote_addr
    ip_data = {"ip_address": ip_address}
    return json.dumps(ip_data)
if __name__ == '__main__':
    app.run()

Метод 4. Использование JavaScript в среде браузера

Если вы хотите получить IP-адрес из клиентской среды браузера, вы можете использовать JavaScript. Вот пример использования API fetch:

fetch('https://api.ipify.org?format=json')
  .then(response => response.json())
  .then(data => console.log(data));

В этой статье мы рассмотрели несколько способов получения IP-адреса в формате JSON. Предпочитаете ли вы использовать API, доступ к сетевому интерфейсу, извлечение IP-адресов из заголовков HTTP или использование JavaScript в среде браузера, теперь у вас есть ряд вариантов на выбор. Следуя предоставленным примерам кода, вы можете легко включить эти методы в свои собственные проекты, гарантируя получение IP-адресов в простом и структурированном формате JSON.