0 votes
in SoSci Survey (dt.) by s249251 (115 points)
edited by SoSci Survey

Guten Abend :)

Ich habe für eine Umfrage einen ChatBot erstellt, welcher über einen API Key GPT 3.5 von Open Ai einbindet. Außerhalb von SoSci Survey läuft der Code.

In SoSci Survey erhalte ich leider folgenden Fehler:

Warnung: Die Funktion curl_init() ist nicht zur Verwendung im Fragebogen freigegeben.
Warnung: Der PHP-Code enthält Funktionen oder PHP-Elemente, die nicht für die Verwendung im Fragebogen freigegeben wurden. Falls Sie der Meinung sind, dass die monierten Konstrukte ungefährlich sind, setzen Sie sich bitte mit dem Administrator in Kontakt!

Ich vermute mal, dass die weiteren Funktionen die ich verwende ebenfalls nicht freigegeben sind:

curl_setopt()
curl_errno()
curl_error()
curl_close()
file_get_contents()

Außerdem erhalte ich den folgenden Fehler: Das PHP Konstrukt ___ darf im PHP-Code nicht verwendet werden.
Für folgende Konstrukte:

class
throw
require
private
public
new
echo

Gibt es eine Möglichkeit, diese freizugeben oder eine Alternative zur Einbindung über PhP?

Liebe Grüße und schon mal vielen Dank für Ihre Antwort!

1 Answer

+1 vote
by SoSci Survey (305k points)

Im Fragebogen können Sie für API-Anfragen die Befehle sendJSON(), sendPOST() und sendXML() verwenden.

Statt echo verwenden Sie bitte html().

Klassen können (dürfen) Sie innerhalb von Fragebögen aus Sicherheitsgründen nicht definieren.

by s249251 (115 points)
Vielen Dank, jetzt funktioniert es! Wo packe ich meinen API Key denn am besten hin, damit dieser nicht im Browser Quellcode angezeigt wird? Gibt es dafür eine best-practise?
by SoSci Survey (305k points)
Wenn Sie die Anfragen direkt via PHP-Code verschicken, ist das unproblematisch. Aber wenn Sie direkt aus dem JavaScript-Code versenden möchten, habe ich noch keine gute Lösung im Angebot.

Es ist geplant (aber bisher nicht priorisiert), dass SoSci Survey Anfragen quasi "durchschleifen" soll. Das würde heißen, dass man in SoSci Survey eine externe API einrichtet, und dabei festlegt, dass der API-Key in der Anfrage ergänzt werden soll. Und dann würde das JavaScript die Anfrage erstmal an SoSci schicken.

Wer dann einen Fragebogen ausfüllt, würde dann zwar den API-Key nicht mehr sehen, könnte innerhalb der Fragebogen-Laufzeit aber immer noch nach Belieben API-Anfragen verschicken. Dieser Lösungsansatz ist also noch nicht ganz ausgegoren.
by s249251 (115 points)
Vielen Dank für die schnellen Antworten! :)

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...