Navigation

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search

    Upload File (Avatar) - CSRF-Token invalid

    ChurchTools Schnittstellen
    2
    5
    104
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • DumbergerL
      DumbergerL last edited by

      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

      davidschilling 1 Reply Last reply Reply Quote 0
      • davidschilling
        davidschilling ChurchToolsMitarbeiter @DumbergerL last edited by

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

        DumbergerL 1 Reply Last reply Reply Quote 1
        • DumbergerL
          DumbergerL @davidschilling last edited by

          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!

          davidschilling 1 Reply Last reply Reply Quote 0
          • davidschilling
            davidschilling ChurchToolsMitarbeiter @DumbergerL last edited by

            @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 Reply Last reply Reply Quote 0
            • DumbergerL
              DumbergerL last edited by

              @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 Reply Last reply Reply Quote 0
              • First post
                Last post