public static async Task <object> RunAsync( [HttpTrigger(AuthorizationLevel.Function, "post")] HttpRequestData req, FunctionContext executionContext) { var logger = executionContext.GetLogger("Messages"); logger.LogInformation("C# HTTP trigger function processed a request."); var message = await req.ReadFromJsonAsync <FireMessage>(); var game = CosmosDbHandler.FindGame(message?.GameId, logger); if (game == null) { return(null); } game = GameController.Fire(game, message.PlayerId, message.Row, message.Column); game = await CosmosDbHandler.SaveGameAsync(game, logger); return(new { Target = "gameUpdated", Arguments = new Game[] { game } }); }
public static async Task <object> Run( [HttpTrigger(AuthorizationLevel.Function, "post")] HttpRequestData req, FunctionContext executionContext ) { var logger = executionContext.GetLogger("InitGame"); logger.LogInformation("C# HTTP trigger function processed a request."); var player = await JsonSerializer.DeserializeAsync <Player>(req.Body); if (!GameController.IsPlayerValid(player)) { return(req.CreateResponse(HttpStatusCode.BadRequest)); } var game = await CosmosDbHandler.FindOpenGameAsync(player, logger); return(new { Target = "gameUpdated", Arguments = new Game[] { game } }); }