• Aktuell
    • Tags
    • Beliebt
    • Benutzer
    • Gruppen
    • Suche
    • Registrieren
    • Anmelden

    Upload File (Avatar) - CSRF-Token invalid

    ChurchTools Schnittstellen
    2
    5
    202
    Lade mehr Beiträge
    • Älteste zuerst
    • Neuste zuerst
    • Meiste Stimmen
    Antworten
    • In einem neuen Thema antworten
    Anmelden zum Antworten
    Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
    • DumbergerLD
      DumbergerL
      zuletzt editiert von

      Der REST-Endpunkt zum Hochladen von Dateien funktioniert für den Domain-Typ "Avatar" nicht.
      Meine Anfrage über POST-Methode: https://intern.church.tools/api/files/avatar/51 samt Datei als multipart/form-data.

      Ich bekomme folgende Fehlermeldung:

      {
        "message": "CSRF-Token is invalid",
        "translatedMessage": "exception.unauthorized",
        "messageKey": "exception.unauthorized",
        "args": [],
        "errors": []
      }
      

      Diesen Fehler bekomme ich sowohl über das Swagger-Interface https://intern.church.tools/api als auch über einen eigen zusammengebauten Request (z.B. in PHP mit Guzzle).

      In der Dokumentation steht nicht davon dass ein CSRF-Token mitgeschickt werden muss. Wenn dem so ist: Wo bekomme ich über die REST-Api einen CSRF-Token her? In welchem Feld muss ich diesen mitschicken?

      VG Lukas

      davidschillingD 1 Antwort Letzte Antwort Antworten Zitieren 0
      • davidschillingD
        davidschilling ChurchToolsMitarbeiter @DumbergerL
        zuletzt editiert von

        @dumbergerl hier findest du die Doku dazu: https://hilfe.church.tools/wiki/0/API-CSRF

        DumbergerLD 1 Antwort Letzte Antwort Antworten Zitieren 1
        • DumbergerLD
          DumbergerL @davidschilling
          zuletzt editiert von

          Danke @davidschilling mit dem CSRF-Token komme ich zumindest einen Schritt weiter!

          Allerdings bekomme ich beim Upload immer diesen Validation-Error:

          {
              "errors": [{
                     "fieldId": "files",
                     "message": "Nur eine Datei darf für diesen Domain Typ hochgeladen werden."
                     "messageKey": "validation.domainfiles"
                     "args": {
                             "name": "files",
                             "value": null
                     }        
                  }]
          }
          

          Und das obwohl ich die Datei im Multipart mitversende. Hier mal ein Auszug der Guzzle-Request-Options:

          [
              "headers" => [
                  "Content-Type" => "multipart/form-data",
                  "CSRF-Token" => "4basio..."
              ],
              "multipart" => [
                  "name" => "files",
                  "filename" => "avatar.png",
                  "content" => "�PNG..."    
              ]
          ]
          

          Denselben Validation-Error bekomme ich auch, wenn ich gar keine Datei versende.
          Kannst du bitte prüfen ob der API-Endpunkt bei dir funktioniert?
          Wenn ja: Kannst du einen Beispiel-Request zeigen?

          VG und vielen Dank schomal!

          davidschillingD 1 Antwort Letzte Antwort Antworten Zitieren 0
          • davidschillingD
            davidschilling ChurchToolsMitarbeiter @DumbergerL
            zuletzt editiert von

            @dumbergerl Schau dir mal diesen Forenbeitrag zu dem Thema an: https://forum.church.tools/topic/8483/song-import-über-die-rest-api/11

            Der Endpunkt funktioniert. Der wird auch in CT genutzt im Profil z.b.

            1 Antwort Letzte Antwort Antworten Zitieren 0
            • DumbergerLD
              DumbergerL
              zuletzt editiert von

              @davidschilling Danke für den Hinweis und die schnelle Antwort! Das hat mir jetzt tatsächlich den entscheidenden Hinweis gegeben. Jetzt hab ich es zum Laufen bekommen

              1 Antwort Letzte Antwort Antworten Zitieren 0
              • Erster Beitrag
                Letzter Beitrag