我在 Qualtrics 中进行了一项调查,并在 Unity 中创建了一个可以捕获对这些调查问题的响应的游戏。我想要做的是将捕获的响应直接从 Unity 上传到 Qualtrics,但是,我无法弄清楚我在 api 请求中做错了什么。
https://api.qualtrics.com/docs/survey-response-import-guide
我能够从服务器获得“成功”响应,但我的数据没有上传。
这是 Unity 的代码片段:
byte[] results;
WWWForm form = new WWWForm();
UnityWebRequest www = UnityWebRequest.Get(getPath());
yield return www.SendWebRequest();
if (www.isNetworkError || www.isHttpError)
{
Debug.Log(www.error);
}
else
{
Debug.Log(www.downloadHandler.text);
results = www.downloadHandler.data;
form.AddBinaryData("fileUpload", results, "csvUpload.png", "text/csv; charset=UTF-8");
}
UnityWebRequest qualtricsUpload = UnityWebRequest.Post("<server link redacted>", form);
qualtricsUpload.SetRequestHeader("X-API-TOKEN", "<api token redacted>");
qualtricsUpload.SetRequestHeader("Content-Type", "text/csv; charset=UTF-8");
yield return qualtricsUpload.SendWebRequest();
if (qualtricsUpload.isNetworkError || qualtricsUpload.isHttpError)
{
Debug.Log(qualtricsUpload.error);
}
else
{
Debug.Log("Survey Responses Uploaded!");
}
我没有收到任何错误,但没有上传任何内容。我怀疑这与文件格式或我发布它的方式有关,但我很困惑。我的文件格式与他们上面的指南所建议的完全一样(除了基于我的调查),格式在 Excel 中也很好。奇怪的是,当我之前忘记发送文件的“获取”请求,并将结果分配给(我假设将是一个空对象)并将其发送到 Qualtrics 服务器时,它实际上向民意调查。所以 api 请求肯定有效(至少在某种程度上),但我似乎无法发送实际数据。
其他人有这方面的经验或有想法吗?