Hauptmenü

Webformular Fehler

Begonnen von aaronpriegnitz, 02.11.2021 16:04:07

⏪ vorheriges - nächstes ⏩

aaronpriegnitz

Hallo zusammen,

ich versuche gerade testweise ein Kix Webformular auf einer kleinen Website einzubinden. Hierbei gehe ich genau so vor wie in der Dokumentation beschrieben, ist ja auch nicht sonderlich komplex.
Hier vielleicht mal den relevanten Teil meines Codes:

<!doctype html>
<html lang="en">
  <head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">


    <!-- Bootstrap CSS -->
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">


   <!-- Kix Button -->
   <script>var kixWebFormURL = 'http://<URL>/integrations';</script>
   <script src="http://<URL>/static/integration/kix-form.js"></script>
   <link href="http://<URL>/static/integration/kix-form.css" rel="stylesheet">


    <title>Hello, world!</title>
  </head>
  <body>
    <h1>Hello, world!</h1>

   <button class="kix-web-form-start-button" id="1635764944283">Supportanfrage</button>
   
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p" crossorigin="anonymous"></script>
  </body>
</html>


<URL> habe ich hier natürlich durch die URL meines Servers ersetzt.

Hierbei kam es nun leider zu mehreren Fehlern. Zunächst konnten die kix-form.js und kix-form.css nicht unter dem angegebenden Pfad gefunden werden. Das erscheint mir sinnvoll, da diese Daten da auch nicht vorlagen. Ich habe sie dann einfach einmal testweise gesucht und tief in den Docker container files gefunden. Die Dateien habe ich dann einfach in dem Ordner hinterlegt und die Fehler waren verschwunden. Wahrscheinlich ist das nicht so vorgesehen, aber ich wusste mir nicht anders zu helfen.

Nun bleibt folgender Fehler beim laden der Website über:



GET http://kix.umwelt.uni-hannover.de/integrations/1635764944283 404 (Not Found)
loadContent @ kix-form.js:48
(anonymous) @ kix-form.js:10


Hier weiß ich mir leider nicht zu helfen da der ordner "integrations" überhaupt nicht existiert.
Aber ich scheine ja ohnehin schon vorher einen Umweg an einer Stelle zu gehen, an der das garnicht notwendig sein sollte.

Vielleicht kann jemand nachvollziehen was hier für ein Problem vorliegt und mir ein paar Tipps geben.

Vielen Dank,
Aaron

aaronpriegnitz

Problem besteht weiterhin und ich bin mit meinem Latein am Ende.
Niemand eine Idee?

Torsten Thau

Hi Aaron,


sorry - ich erhalte mitunter keine Benachrichtigungen aus dem Forum dass neue Einträge vorliegen oder der Spamfilter ist zu "engstirnig"...


Funktioniert die Verwendung des Formulars, wenn Du es ganz schlicht auf eine lokale "something.html"-Datei legst? Fehlt ggf. noch die cross-site-freischaltung ("akzeptierte Domains") in der KIX-seitigen Formularkonfiguration?


https://docs.kixdesk.com/display/K18AdminDECommunity/Ein+Webformular+anlegen


Ansonsten kontaktiere bitte unseren Support. Ggf. ist es schneller wenn wir gemeinsam mal drauf schauen. Lösung, sollten wir natürlich hier dokumentieren ...für die Nachwelt.


CU, Torsten

aaronpriegnitz

Hi Torsten,

danke erstmal für deine Antwort.


Die cross-site-freischaltung hatte ich wärend der Erstellung des Formulars eigentlich konfiguriert. Ich habe da einfach die URL meines Servers angegeben: http://<url>.de (Siehe Bild)


Was die Cross-Site-Freischaltung angeht so habe ich mit der Methode in meinem ersten Beispiel scheinbar keine Probleme damit. Ich habe seitdem allerdings etwas im Code herumgespielt und die Script Schnippsel wie folgt erweitert:



<script>var kixWebFormURL = 'http://<URL>.de:20001/integrations';</script>
<script src="http://<URL>.de:20001/static/integration/kix-form.js"></script>



Ich habe also die URL nur noch mit dem Port 20001 erweitert. Tatsächlich bekomme ich in dieser Version folgenden Fehler:


Access to script at 'http://<URL>.de:20001/static/integration/kix-form.js' from origin 'http://<URL>.de' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.


was wahrscheinlich der Fehler ist von dem du sprichst.

Nun frage ich mich ob mein erster Versuch überhaupt richtig war oder ob ich die Anfrage tatsächlich wie hier an den bestimmten Port senden muss. Das klingt für mich zumindest insofern einläuchtend das ich mit diesem Port auf der Docker instanz lande, wo ja auch alle KIX Daten liegen sollten, wohingegen mich mein vorheriger Versuch ja nur auf den Appache Server meines Server schickt, wo natürlich keine Daten liegen die KIX betreffen.


Gibt es eine möglichkeit beim erstellen des Formulars unter "Akzeptierte Domains" eine Wildcard anzugeben die ersteinmal alle Domains annimmt? Also zu Testzwecken?

Grüße,
Aaron

Torsten Thau

Hallo Aaron,


ja das Feld "Akzeptierte Domains" akzeptiert reguläre Ausdrücke. Wenn Du also ".*" (ohne Anführungsstriche) eingibst, matcht das auf alles - was für produktiven Einsatz natürlich nicht zu empfehlen ist.


CU, Torsten

Jörg Brückner

Hallo aaronpriegnitz,

wir konnten das Verhalten nun prüfen und haben einen Bug festgestellt.
Das Problem dabei ist: "Beim Aufruf einer HTML-Seite, auf der ein Webform integriert ist, stürzt das Frontend ab. Anschließend ist das Agentenportal nicht mehr erreichbar". Danach läuft man in den genannten Fehler.
Wir werden den Bug schnellstmöglich beheben.

Herzliche Grüße
Jörg