Claude Opus 4 Программирование Технический писатель Русский

Промпт руководство по REST API

Промпт для создания подробного руководства по интеграции REST API с третьими сторонами. Включает структурированный текст с примерами кода на Python (библиотека requests), описание методов GET/POST/PUT/DELETE, обработку ошибок 401/403/500 и рекомендации по безопасному хранению API-ключей. Примеры на GitHub API с эндпоинтами.

Подходит для технических писателей и разработчиков, желающих создать полное руководство с кодовыми блоками и списками. Охватывает все разделы: введение в REST API, основы запросов, примеры кода, безопасность и ошибки.

Mikhail
Автор
Mikhail
Опубликовано 01.08.2025
0,0
Views 55
Вы — технический писатель. Напишите подробное руководство по использованию REST API для интеграции с третьими сторонами.
Объем до 1500-2000 слов.

Включите примеры кода на Python с использованием библиотеки `requests`, описания методов GET/POST/PUT/DELETE, обработку ошибок 401/403/500, а также рекомендации по безопасному хранению API-ключей. Уточните примеры на конкретном API (например, GitHub API) с указанием эндпоинтов.

Добавьте разделы:
1) Введение в REST API;
2) Основы запросов (методы, заголовки, параметры);
3) Примеры кода (с GET/POST/PUT/DELETE);
4) Обработка ошибок (коды 401, 403, 500); 5) Рекомендации по безопасности (HTTPS, хранение ключей в переменных окружения, использование OAuth).

Формат: структурированный текст с заголовками, списками и кодовыми блоками.

Пример работы "Промпт руководство по REST API"

Полное руководство по интеграции с REST API на примере GitHub API

1. Введение в REST API

REST (Representational State Transfer) — это архитектурный стиль для построения распределенных систем, основанный на принципах HTTP. REST API позволяет различным приложениям взаимодействовать друг с другом через стандартизированный интерфейс.

Ключевые принципы REST:

  • Клиент-серверная архитектура: разделение ответственности между клиентом и сервером
  • Отсутствие состояния: каждый запрос содержит всю необходимую информацию
  • Единообразный интерфейс: стандартизированные методы HTTP
  • Многоуровневая система: возможность использования промежуточных серверов
  • Кэшируемость: ответы могут быть кэшированы для повышения производительности

Преимущества REST API:

  • Простота использования и понимания
  • Масштабируемость
  • Независимость от платформы
  • Поддержка различных форматов данных (JSON, XML)

2. Основы запросов

HTTP методы

REST API использует стандартные HTTP методы для выполнения операций:

  • GET: получение данных (чтение)
  • POST: создание новых ресурсов
  • PUT: полное обновление существующих ресурсов
  • PATCH: частичное обновление ресурсов
  • DELETE: удаление ресурсов

Структура запроса

Типичный REST API запрос состоит из:

  1. URL эндпоинта: https://api.github.com/users/{username}
  2. HTTP метода: GET, POST, PUT, DELETE
  3. Заголовков (Headers): Content-Type: application/json Authorization: Bearer YOUR_TOKEN Accept: application/vnd.github.v3+json
  4. Параметров запроса: ?page=1&per_page=10
  5. Тела запроса (для POST/PUT): JSON данные

Установка необходимых библиотек

pip install requests python-dotenv

3. Примеры кода с GitHub API

Базовая настройка

import requests
import json
from dotenv import load_dotenv
import os

# Загрузка переменных окружения
load_dotenv()

# Базовый URL GitHub API
BASE_URL = "https://api.github.com"

# Получение токена из переменной окружения
GITHUB_TOKEN = os.getenv("GITHUB_TOKEN")

# Заголовки для аутентификации
headers = {
    "Authorization": f"Bearer {GITHUB_TOKEN}",
    "Accept": "application/vnd.github.v3+json",
    "Content-Type": "application/json"
}

GET запрос - Получение информации о пользователе

def get_user_info(username):
    """Получить информацию о пользователе GitHub"""
    endpoint = f"{BASE_URL}/users/{username}"

    try:
        response = requests.get(endpoint, headers=headers)
        response.raise_for_status()  # Вызовет исключение для кодов 4xx и 5xx

        user_data = response.json()
        print(f"Имя пользователя: {user_data['name']}")
        print(f"Публичных репозиториев: {user_data['public_repos']}")
        print(f"Подписчиков: {user_data['followers']}")

        return user_data

    except requests.exceptions.HTTPError as e:
        print(f"HTTP ошибка: {e}")
        return None
    except requests.exceptions.RequestException as e:
        print(f"Ошибка запроса: {e}")
        return None

# Пример использования
user_info = get_user_info("octocat")

GET запрос с параметрами - Получение репозиториев

def get_user_repos(username, page=1, per_page=10):
    """Получить список репозиториев пользователя с пагинацией"""
    endpoint = f"{BASE_URL}/users/{username}/repos"

    params = {
        "page": page,
        "per_page": per_page,
        "sort": "updated",
        "direction": "desc"
    }

    try:
        response = requests.get(endpoint, headers=headers, params=params)
        response.raise_for_status()

        repos = response.json()

        print(f"Найдено репозиториев: {len(repos)}")
        for repo in repos:
            print(f"- {repo['name']}: {repo['description']}")

        return repos

    except requests.exceptions.HTTPError as e:
        handle_http_error(e.response)
        return None

# Пример использования
repos = get_user_repos("octocat", page=1, per_page=5)

POST запрос - Создание нового репозитория

def create_repository(repo_name, description="", private=False):
    """Создать новый репозиторий"""
    endpoint = f"{BASE_URL}/user/repos"

    data = {
        "name": repo_name,
        "description": description,
        "private": private,
        "auto_init": True,
        "gitignore_template": "Python"
    }

    try:
        response = requests.post(endpoint, headers=headers, json=data)
        response.raise_for_status()

        repo = response.json()
        print(f"Репозиторий создан: {repo['full_name']}")
        print(f"URL: {repo['html_url']}")

        return repo

    except requests.exceptions.HTTPError as e:
        handle_http_error(e.response)
        return None

# Пример использования
new_repo = create_repository("test-api-repo", "Тестовый репозиторий через API")

.....

Похожие промпты

Mikhail

Mikhail Verified

02.09.2025

Gemini 2.5 Pro

Промпт: REST API для пользователей Flask

Разработка REST API для управления базой данных пользователей с использованием Python и Flask. Этот промпт …

Программирование Backend‑разработчик Русский
Star 0,0
Views 76
Mikhail

Mikhail Verified

29.08.2025

Claude Opus 4

Промпт для создания REST-контроллера

Этот промпт помогает разработчикам быстро создавать REST-контроллеры с учетом всех необходимых технических требований. Промпт подходит …

Программирование Backend‑разработчик Русский
Star 0,0
Views 57
Mikhail

Mikhail Verified

01.08.2025

ChatGPT 5

Промпт по ООП для новичков

Промпт помогает создать подробное объяснение объектно-ориентированного программирования (ООП) для новичков. Включает метафоры из повседневной жизни, …

Программирование Технический писатель Русский
Star 0,0
Views 51
Mikhail

Mikhail Verified

26.07.2025

Claude Sonnet 3.5

ai промпты: генерация адаптивной верстки

Этот промпт подключает ИИ к процессу верстки: 1) Анализ макета — искусственный интеллект (AI) определяет …

Программирование Frontend‑разработчик Русский
Star 0,0
Views 75

Авторизуйтесь, чтобы оставить комментарий.

Комментариев: 0

Нет комментариев.