Discourse Drafts api funktioniert nicht

Ich habe ein Problem bei der Implementierung der Drafts-API mit Spring Boot. Alle APIs funktionieren, aber diese eine API bereitet mir Schwierigkeiten und ich kann das Problem nicht verstehen.

Hat jemand dies implementiert und könnte mich durch das Problem führen? Ich füge den Fehler ein, den ich in der Ausnahme abfangen kann:

2023-05-15 15:09:44.310 ERROR 880 --- [nio-5000-exec-1] c.b.c.e.advice.ExceptionHandlerAdvice    :  ** Exception Leaked & captured : JsonParseException; Unrecognized token 'Optional': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false')
 at [Source: (String)"Optional[java.nio.HeapByteBuffer[pos=0 lim=16187 cap=16187]]"; line: 1, column: 9]
2023-05-15 15:09:44.315 DEBUG 880 --- [nio-5000-exec-1] s.s.w.c.SecurityContextPersistenceFilter : Cleared SecurityContextHolder to complete request
com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'Optional': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false')

Hier ist auch die Nutzlast und die URL “/drafts.json”:

{
    "draft_key": "new_topic",
    "sequence": 94,
    "data": {
        "reply": "estaetwetweas sfasdf asdfa sdf as ",
        "action": "createTopic",
        "title": "test test test",
        "categoryId": 5,
        "archetypeId": "regular",
        "metaData": null,
        "composerTime": 19025,
        "typingTime": 4800
    }
}
1 „Gefällt mir“

Ich spiele gerne ein wenig mit der API herum und habe mir das kurz angesehen, aber Insomnia gibt einen Fehler 500 zurück. :confounded:

Ich verwende einen Admin-API-Schlüssel und die folgende Payload in Insomnia mit einer POST-Anfrage an /drafts.json:

{
  "draft_key": "new_topic",
  "sequence": 181,
  "data": {
    "reply": "test draft",
    "action": "createTopic",
    "title": "Here's a draft topic again",
    "categoryId": 4,
    "archetypeId": "regular",
    "metaData": null,
    "composerTime": 11311,
    "typingTime": 3200
  },
  "owner": "fa8073ea509544319371333121ca878e",
  "force_save": false
}

Ich erhalte den gleichen Fehler 500, wenn ich eine “reply”-Draft-Anfrage stelle.

Entschuldigung, dass ich nicht weiterhelfen kann, aber ich frage mich jetzt, warum es nicht funktioniert. :technologist: :grey_question:

Ich würde die Lösung hier sicherlich aktualisieren. Vielen Dank für den Versuch, und wenn Sie sie früher als ich beheben können, aktualisieren Sie sie bitte hier, damit ich auch von Ihrer Mühe profitieren kann.

1 „Gefällt mir“

Hallo Leute, ich möchte nur noch hinzufügen, dass ich genau das gleiche Problem hatte (versuchte, an draft.json mit der gleichen Reverse-Engineering-Payload zu posten) und mich gefragt habe, ob ihr eine Lösung oder einen Workaround gefunden habt, um Entwürfe über die API in Beiträge zu schreiben. Danke!