我遇到了与此线程完全相同的问题 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;。 我想让我的应用程序确切地知道不同的错误,以获得相应的结果。
问题:
我如何获得&#34; MY_ERROR_CODE&#34;在Unity?
为什么&#34; HERE1&#34;是在控制台上打印但不是&#34; HERE2&#34;? &#34;字符串结果= t.Result&#34;之后的每个代码不叫。我是否遗漏了ContinueWith函数的一些重要功能?
答案 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错误的更多信息。