public override void OnActionExecuting(ActionExecutingContext context) { if (!context.ModelState.IsValid) { context.Result = new JsonResult(JsonErrorMessage.GetJsonErrorMessage(context.ModelState, _StringLocalizer)); context.HttpContext.Response.StatusCode = StatusCodes.Status412PreconditionFailed; } else { base.OnActionExecuting(context); } }
private void HandleResponse() { _transferRatePerSecond = 0; #if USE_WEB_REQUEST StatusCode = (int)_request.responseCode; #else if (_request.responseHeaders.ContainsKey("STATUS")) { string code = _request.responseHeaders["STATUS"].Split(' ')[1]; StatusCode = int.Parse(code); } else { StatusCode = StatusCodes.CLIENT_NETWORK_ERROR; } #endif if (StatusCode != StatusCodes.OK) { Status = FileUploaderStatus.CompleteFailed; if (_request.error != null) { ReasonCode = ReasonCodes.CLIENT_UPLOAD_FILE_UNKNOWN; Response = CreateErrorString(StatusCode, ReasonCode, _request.error); } else #if USE_WEB_REQUEST { Response = _request.downloadHandler.text; } #else { Response = _request.text; } #endif JsonErrorMessage resp = null; try { resp = JsonReader.Deserialize <JsonErrorMessage>(Response); } catch (JsonDeserializationException e) { BrainCloudClient.Instance.Log(e.Message); } if (resp != null) { ReasonCode = resp.reason_code; } else { ReasonCode = ReasonCodes.CLIENT_UPLOAD_FILE_UNKNOWN; Response = CreateErrorString(StatusCode, ReasonCode, Response); } } else { Status = FileUploaderStatus.CompleteSuccess; #if USE_WEB_REQUEST Response = _request.downloadHandler.text; #else Response = _request.text; #endif BrainCloudClient.Instance.Log("Uploaded " + _fileName + " in " + _elapsedTime.ToString("0.0##") + " seconds"); } #if USE_WEB_REQUEST CleanupRequest(); #endif }