public async Task <IActionResult> Generate(string caption1, string caption2, string id) { HttpClient client = new HttpClient(); HttpRequestMessage httpRequestMessage = new HttpRequestMessage(); httpRequestMessage.Method = HttpMethod.Post; httpRequestMessage.RequestUri = new Uri("https://api.imgflip.com/caption_image?template_id=" + id + "&username=justin_b&password=#MemeGenerator1=" + caption1 + "&text1=" + caption2); HttpResponseMessage resp = await client.SendAsync(httpRequestMessage); string result = resp.Content.ReadAsStringAsync().Result; GeneratedRoot g = JsonSerializer.Deserialize <GeneratedRoot>(result); return(RedirectToAction("Result", new { url = g.data.url })); // if you had to send an object across as JSON //Uri uri = new Uri("https://api.imgflip.com/caption_image"); //RequestModel rm = new RequestModel("[your username]","[your password]",caption1, caption2); //string jsonContent = JsonSerializer.Serialize(rm); //byte[] buffer = System.Text.Encoding.UTF8.GetBytes(jsonContent); //ByteArrayContent b = new ByteArrayContent(buffer); //b.Headers.ContentType = new MediaTypeHeaderValue("application/json"); //HttpResponseMessage resp = await client.postAsync(uri,b); }
public async Task <IActionResult> Generate(string caption1, string caption2, string id) { HttpClient client = new HttpClient(); HttpRequestMessage httpRequestMessage = new HttpRequestMessage(); httpRequestMessage.Method = HttpMethod.Post; //Need to create own account and add details to code below in order to create memes. httpRequestMessage.RequestUri = new Uri("https://api.imgflip.com/caption_image?template_id=" + id + "&username=[username]&password=[password]=" + caption1 + "&text1=" + caption2); HttpResponseMessage resp = await client.SendAsync(httpRequestMessage); string result = resp.Content.ReadAsStringAsync().Result; GeneratedRoot g = JsonSerializer.Deserialize <GeneratedRoot>(result); return(RedirectToAction("Result", new { url = g.data.url })); }
public async Task <IActionResult> Generate(String caption1, String caption2, String id) { //sending the url with parameters HttpClient client = new HttpClient(); HttpRequestMessage httpRequestMessage = new HttpRequestMessage(); httpRequestMessage.Method = HttpMethod.Post; httpRequestMessage.RequestUri = new Uri("https://api.imgflip.com/caption_image?template_id=" + id + "&username=justinepillay&password=Just0401&text0=" + caption1 + "&text1=" + caption2); HttpResponseMessage resp = await client.SendAsync(httpRequestMessage); String result = resp.Content.ReadAsStringAsync().Result; GeneratedRoot rootObj = JsonSerializer.Deserialize <GeneratedRoot>(result); Console.WriteLine(result); Meme generateMeme = MemeHolder.memes.Where(m => m.id.Equals(id)).First(); System.Console.WriteLine(rootObj.data.url); return(RedirectToAction(nameof(Test), new { @url = rootObj.data.url })); }