# 网络请求接口设计:获取天气数据


背景介绍

设计一个简单的网络请求接口,用于获取天气数据。输入输出示例清晰,展示了如何接收URL和HTTP方法参数,并返回API响应内容。该接口可用于本地开发环境,无需依赖外部服务。

思路分析

  1. 参数传递:通过URL查询参数传递城市名等信息,例如 url = "https://api.example.com/weather?city=北京"
  2. 响应解析:接收API响应内容(如JSON格式),解析为字典结构,例如 {"status": "success", "data": { ... }}
  3. 本地运行:代码无需依赖外部服务,直接在本地环境中运行。

代码实现

import requests

def get_weather_data(url, method='GET'):
    # 设置请求头(可选,用于缓存或防盗链)
    headers = {
        'User-Agent': 'Mozilla/5.0'
    }

    # 构建请求参数
    params = {
        'city': '北京'
    }

    # 发送GET请求
    response = requests.get(url, params=params, headers=headers)

    # 处理响应
    if response.status_code == 200:
        data = response.json()
        return {
            'status': 'success',
            'data': {
                'current_temp': data['current_temp'],
                'humidity': data['humidity'],
                'forecast': data['forecast']
            }
        }
    else:
        raise Exception(f"请求失败码: {response.status_code}")

总结

本实现展示了网络请求的核心技术点:参数传递与响应解析。通过使用Python的requests库,可以高效地发送GET请求并处理API响应。代码清晰,直接运行,符合1~3天实现的难度要求。


发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注