如何可以自定义云引擎回报给Unity SDK的错误?

自己做的实例准备在用户注册前监测username是否被占用
云端代码 :

var query = new AV.Query (AV.User);
query.equalTo ("username", request.params.username);

query.first ().then (function (user){
    if (user){
        response.error ({code: 202, message: 'Username occupied.'});
    }elser{
        response.success ();
    }
}, function (error){
    response.error (error);
});

Unity 端代码

var task = AVCloud.CallFunctionAsync<Dictionary<string, object>> ("beforeSaveUser", parameters);
while (!task.isCompleted)    yield return null;

if (task.IsFaulted || task.IsCanceled){
    using (IEnumerator<Exception> enumerator = task.Exception.InnerExceptions.GetEnumerator ()){
        if (enumerator.MoveNext ()){
            Exception error = enumerator.Current;
            Debug.log ((int)error.Code + " : " + error.Message) // 这里返回是 -1 : 400 Bad Request
            if ((int)error.Code == 202){
                MyPopUpWindow.PopMessage ("Username taken. Please choose another username.);
            }
        }
    }
}
Debug.log ("Username available"); // 如果使用一个不重复用户名,debug会输出这句

Unity端用重复username测试,返回错误但是输出值一直是-1和400。不知道哪一步出错了。。