Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Support array of format: binary items in multipart/form-data request bodies

Offen
#1,255 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
48/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
openapi, python
Bereich
api, tooling

Rechercherichtung

Beginnen Sie damit, den Generatorpfad nachzuverfolgen, der multipart/form-data-Anforderungskörper verarbeitet, und vergleichen Sie ihn mit der in diesem Issue beschriebenen generierten sync_detailed(...)-Methode. Überprüfen Sie, dass der generierte Client das files-Feld als Multipart-Daten und nicht über httpx json= sendet, und fügen Sie Abdeckung für das bereitgestellte OpenAPI-Schema hinzu, falls es im Repository einen passenden Speicherort für Generator-Tests gibt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Describe the bug
When an OpenAPI 3.0 schema defines a property as an array of binaries inside a multipart/form-data requestBody, the generator currently treats it as a JSON body and emits a single body parameter. As a result:

  • The generated sync_detailed(...) signature has only:
def sync_detailed(
    *,
    client: Client,
    body: UploadFilesPostBody,
    hash_: str,
) -> Response[Any]:
    …
  • Internally body.files (a list of File objects with payload: BinaryIO) is passed to json=…, causing serialization errors.

OpenAPI Spec File

paths:
  /upload_files:
    post:
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                hash_:
                  type: string
                files:
                  type: array
                  items:
                    type: string
                    format: binary
      responses:
        '200':
          description: OK

What actually happens

  • The generator emits a single body: UploadFilesPostBody parameter.
  • When calling sync_detailed(..., body=…), httpx is invoked with json=… and fails on BinaryIO because it isn’t valid JSON.

Desktop:

  • OS: Windows 10
  • Python Version: cPython 3.12.8
  • openapi-python-client version 0.24.3

Additional context
None - if anything is needed, please let me know

Vorherrschende Sprache
Python
Sterne
2k
Forks
293
Ø Merge
34 Min.
Gemergte PRs (30 T.)
1

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus openapi-generators/openapi-python-client

Alle Issues in openapi-generators/openapi-python-client

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.