Files
azure-functions-talk/DozenPlz.cs
Tommy Parnell db53f2f75e stop
2018-11-19 23:55:04 -05:00

32 lines
1.0 KiB
C#

using System;
using System.IO;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Extensions.Http;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Logging;
using Newtonsoft.Json;
using System.Linq;
using System.Net.Http;
namespace azure_functions_talk
{
public static class DozenPlz
{
public static HttpClient client = new HttpClient();
[FunctionName("DozenPlz")]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = "/dozen")] HttpRequest req,
ILogger log)
{
var baseUrl = Environment.GetEnvironmentVariable("baseUrl");
var tasks = Enumerable.Range(0, 12).Select(a => client.GetStringAsync(baseUrl + "/make"));
await Task.WhenAll(tasks);
var dozen = tasks.Select(a => JsonConvert.DeserializeObject<Dounut>(a.Result)).ToList();
return new OkObjectResult(dozen);
}
}
}