首页 > 解决方案 > Unity WebGL UnityWebRequest在上传和下载数据时不起作用

问题描述

通过使用 UnityWebRequest 与 Web 服务器通信,我既不能上传数据也不能下载数据。就我而言,我正在尝试上传和下载用户高分(我正在使用 dreamlo 服务)。下面的两个协程都不起作用,因为上传协程根本不上传所需的分数,下载协程不返回文本。

IEnumerator UploadHighscore(string name, int score, int gameMode){
        UnityWebRequest www = new UnityWebRequest (webURL + privateCode + "/add/" + UnityWebRequest.EscapeURL(name + "+" + score.ToString()) + "/" + score + "/" + gameMode);
        yield return www;

    if (string.IsNullOrEmpty(www.error))
    {
        print("Uploaded");
        uIManager.RegisterCallBack(true);
    }
    else {
        print ("Failed to Upload: " + www.error);
        uIManager.RegisterCallBack(false);
    }
}

IEnumerator DownloadHighscores(){
    UnityWebRequest www = UnityWebRequest.Get (webURL + publicCode + "/pipe/");
    yield return www.SendWebRequest();

    if (www.isNetworkError || www.isHttpError)
    {
        Debug.Log(www.error);
    }
    else
    {
        FormatHighScores(www.downloadHandler.text);
    }
}

感谢您提前提供任何帮助!

编辑:代码在 Unity 编辑器中工作。出于某种原因,它只有在将我的 WebGL 构建嵌入我的网站后才会停止工作。

标签: c#unity3dunity-webglunity-networking

解决方案


尝试使用 WWW 类。如果游戏在编译时无法运行,请从浏览器控制台发送错误。


推荐阅读