Udostępnij przez


Generowanie pliku HTTP

Na pierwszy rzut oka
Celem: Tworzenie pliku HTTP z przechwyconych żądań interfejsu API w celu ponownego użycia
Czas: 10 minut
Plugins:HttpFileGeneratorPlugin
Wymagania wstępne:konfigurowanie serwera proxy deweloperskiego

Dev Proxy umożliwia generowanie pliku HTTP na podstawie przechwyconych żądań i odpowiedzi interfejsu API. Korzystanie z plików HTTP jest szczególnie przydatne dla deweloperów, którzy chcą symulować zachowanie interfejsu API lub współużytkować powtarzalne interakcje interfejsu API. Plik HTTP zawiera wszystkie istotne szczegóły żądania i odpowiedzi, a poufne informacje zastąpione zmiennymi na potrzeby zabezpieczeń i możliwości ponownego użycia.

Aby wygenerować plik HTTP przy użyciu serwera proxy deweloperskiego:

  1. W pliku konfiguracji włącz polecenie HttpFileGeneratorPlugin:

    Plik: devproxyrc.json

    {
      "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/rc.schema.json",
      "plugins": [
        {
          "name": "HttpFileGeneratorPlugin",
          "enabled": true,
          "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
          "configSection": "httpFileGeneratorPlugin"
        }
      ],
      "urlsToWatch": [
        "https://api.example.com/*"
      ],
      "httpFileGeneratorPlugin": {
        "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/httpfilegeneratorplugin.schema.json",
        "includeOptionsRequests": false
      }
    }
    
  2. Opcjonalnie skonfiguruj wtyczkę, dodając właściwość includeOptionsRequests do sekcji httpFileGeneratorPlugin. Ta właściwość określa, czy uwzględnić żądania OPTIONS w wygenerowanym pliku HTTP. Wartość domyślna to false.

  3. W pliku konfiguracji do listy adresów URL do obejrzenia dodaj adres URL interfejsu API, dla którego chcesz wygenerować plik HTTP.

    Pełny plik konfiguracji wygląda następująco.

    Plik: devproxyrc.json

    {
      "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/rc.schema.json",
      "plugins": [
        {
          "name": "HttpFileGeneratorPlugin",
          "enabled": true,
          "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
          "configSection": "httpFileGeneratorPlugin"
        }
      ],
      "urlsToWatch": [
        "https://api.example.com/*"
      ],
      "httpFileGeneratorPlugin": {
        "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/httpfilegeneratorplugin.schema.json",
        "includeOptionsRequests": false
      }
    }
    
  4. Uruchom serwer proxy deweloperów:

    devproxy
    
  5. Rozpocznij rejestrowanie żądań, naciskając r.

  6. Wykonaj żądania interfejsu API, które chcesz uwzględnić w pliku HTTP.

  7. Zatrzymaj nagrywanie, naciskając s.

  8. Dev Proxy generuje plik HTTP i zapisuje go w bieżącym katalogu. Plik zawiera wszystkie przechwycone żądania i odpowiedzi, z danymi poufnymi, takimi jak tokeny elementu nośnego i klucze interfejsu API zastąpione zmiennymi. Przykład:

    @jsonplaceholder_typicode_com_api_key = api-key
    ###
    # @name getPosts
    GET https://jsonplaceholder.typicode.com/posts?api-key={{jsonplaceholder_typicode_com_api_key}}
    Host: jsonplaceholder.typicode.com
    User-Agent: curl/8.6.0
    Accept: */*
    Via: 1.1 dev-proxy/0.29.0
    

    Wtyczka automatycznie tworzy zmienne dla każdej kombinacji nazwy hosta i poufnego parametru, ponownie korzystając z nich między żądaniami, jeśli ma to zastosowanie.

Zrzut ekranu przedstawiający dwa okna wiersza polecenia. Jeden z nich przedstawia żądania interfejsu API rejestrowania serwera proxy dla deweloperów. Drugi pokazuje wygenerowany plik HTTP.

Dalsze kroki

Dowiedz się więcej o httpFileGeneratorPlugin.

Zobacz także