public override async Task <ResponseData> MakeResponseData() { var pathWithoutParams = context.AbsolutePath; ResponseData responseData = new ResponseData(); string filePath = pathWithoutParams.Remove(0, 1); if (string.IsNullOrEmpty(filePath)) { filePath = "index.html"; } FileReadResult fileReadResult = await _resourceFileStorage.ReadFileFromResource(filePath); if (!fileReadResult.IsError) { responseData.data = fileReadResult.data; } else { Debug.LogError($"Error load file - {filePath}"); responseData.data = ResponseTools.ConvertStringToResponseData($"Error load file {filePath}"); } return(responseData); }
public override async Task <ResponseData> MakeResponseData() { var idString = context.HttpListenerContext.Request.QueryString.Get("id"); if (string.IsNullOrEmpty(idString)) { throw new Exception("Dont find tag \"id\" in query string"); } var idInt = int.Parse(idString); byte[] finalArray = new byte[0]; if (_sceneHierarchyData == null) { _sceneHierarchyData = HierarchyTools.GetHierarchyActiveScene(); } if (_sceneHierarchyData.gameobjectsDictonary.TryGetValue(idInt, out GameObject go)) { await TaskSwitcher.SwitchToMainThread(); Vector3 position = go.transform.position; Vector3 rotation = go.transform.rotation.eulerAngles; Vector3 scale = go.transform.localScale; GameObjectInfo objectInfo = new GameObjectInfo() { activeSelf = go.activeSelf, name = go.name, position = position, rotation = rotation, scale = scale, }; var json = JsonConvert.SerializeObject(objectInfo, Formatting.Indented, new JsonSerializerSettings() { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }); finalArray = ResponseTools.ConvertStringToResponseData(json); if (LogToConsoleConfig.IsLogToConsole) { Debug.Log(json); } } else { throw new Exception("Dont find id object " + idInt); } return(new ResponseData() { data = finalArray, }); }
public override async Task <ResponseData> MakeResponseData() { if (_sceneHierarchyData == null) { _sceneHierarchyData = HierarchyTools.GetHierarchyActiveScene(); } var json = JsonConvert.SerializeObject(_sceneHierarchyData, Formatting.Indented); return(new ResponseData() { data = ResponseTools.ConvertStringToResponseData(json) }); }
private async Task <ResponseData> OnResponseHandler(HttpServerContext context) { ResponseData responseData = null; try { responseData = await CreateResponse(context); } catch (Exception e) { responseData = new ResponseData { data = ResponseTools.ConvertStringToResponseData(e.Message) }; Debug.LogWarning(e.Message); } return(responseData); }