如何在c#(Unity3D)中检索response.error和response.success消息?

时间:2014-07-07 18:05:23

标签: unity3d parse-platform

我遇到了与此线程完全相同的问题 https://www.parse.com/questions/how-to-retrieve-responseerror-and-responsesuccess-messages-in-c-unity3d

存档时没有任何评论或问题。

关于云代码

Parse.Cloud.beforeSave("GameScore", function(request, response) {
        response.error("MY_ERROR_CODE");});

在Unity C#代码中:

ParseCloud.CallFunctionAsync<string>("Function", paramsDict)
            .ContinueWith(t => {

                if(t.IsFaulted){
                    foreach(Exception e in t.Exception.InnerExceptions){
                        ParseException ex = (ParseException)e;
                        Debug.Log (ex.Message); 
                    }
                }
                Debug.Log ("HERE1");    
                string result = t.Result
                Debug.Log ("HERE2");    
});

输出总是&#34; 400 Bad Request&#34;,或者不是我自己的错误代码&#34; MY_RRROR_CODE&#34;。 我想让我的应用程序确切地知道不同的错误,以获得相应的结果。

问题:

  1. 我如何获得&#34; MY_ERROR_CODE&#34;在Unity?

  2. 为什么&#34; HERE1&#34;是在控制台上打印但不是&#34; HERE2&#34;? &#34;字符串结果= t.Result&#34;之后的每个代码不叫。我是否遗漏了ContinueWith函数的一些重要功能?

2 个答案:

答案 0 :(得分:0)

在您的Cloud Code中,您没有创建名为Function的云功能,您只是创建了一个beforeSave()处理程序。

在Unity C#代码中,string result = t.Result最后没有;,否则它应该有效。

答案 1 :(得分:0)

根据Christine Abernathy的说法:https://www.parse.com/questions/unity-sdk-handling-errors ...由于Unity的HTTP堆栈有限,因此无法从Unity中获取有关Parse错误的更多信息。