display the resulting json

main
Paul Schneider 9 years ago
parent fdd92747fb
commit f1115daab9
1 changed files with 53 additions and 28 deletions

@ -1,15 +1,22 @@
using System; using System;
using System.Json;
using System.Net.Http; using System.Net.Http;
using System.Net.Http.Headers; using System.Net.Http.Headers;
using System.Threading; using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
using Microsoft.AspNet.Mvc; using Microsoft.AspNet.Mvc;
using Microsoft.Extensions.Logging;
using Yavsc.Helpers; using Yavsc.Helpers;
namespace testOauthClient.Controllers namespace testOauthClient.Controllers
{ {
public class HomeController : Controller public class HomeController : Controller
{ {
ILogger _logger;
public HomeController(ILoggerFactory loggerFactory)
{
_logger=loggerFactory.CreateLogger<HomeController>();
}
[HttpGet] [HttpGet]
public IActionResult Index() public IActionResult Index()
{ {
@ -18,7 +25,8 @@ namespace testOauthClient.Controllers
[HttpPost] [HttpPost]
public async Task<IActionResult> GetUserInfo(CancellationToken cancellationToken) public async Task<IActionResult> GetUserInfo(CancellationToken cancellationToken)
{ {
using (var client = new HttpClient()) { using (var client = new HttpClient())
{
var request = new HttpRequestMessage(HttpMethod.Get, "http://dev.pschneider.fr/api/me"); var request = new HttpRequestMessage(HttpMethod.Get, "http://dev.pschneider.fr/api/me");
request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", AccessToken); request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", AccessToken);
@ -34,34 +42,51 @@ namespace testOauthClient.Controllers
[HttpPost] [HttpPost]
public async Task<IActionResult> PostDeviceInfo(CancellationToken cancellationToken) public async Task<IActionResult> PostDeviceInfo(CancellationToken cancellationToken)
{ {
/* using (var client = new HttpClient()) { /*
var request = new HttpRequestMessage(HttpMethod.Post, "http://dev.pschneider.fr/api/gcm/register"); using (var client = new HttpClient()) {
var request = new HttpRequestMessage(HttpMethod.Post, "http://dev.pschneider.fr/api/gcm/register");
request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", AccessToken); request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", AccessToken);
var json = JsonConvert. var json = JsonConvert.
SerializeObject(new Yavsc.Models.Identity.GoogleCloudMobileDeclaration { DeviceId= "devid01", GCMRegistrationId = "1234" } ); SerializeObject(new Yavsc.Models.Identity.GoogleCloudMobileDeclaration { DeviceId= "devid01", GCMRegistrationId = "1234" } );
var content = new StringContent(json, Encoding.UTF8, "application/json"); var content = new StringContent(json, Encoding.UTF8, "application/json");
var response = await client.SendAsync(request, cancellationToken); var response = await client.SendAsync(request, cancellationToken);
response.EnsureSuccessStatusCode(); response.EnsureSuccessStatusCode();
return View("Index", model: await response.Content.ReadAsStringAsync()); return View("Index", model: await response.Content.ReadAsStringAsync());
}*/ }*/
var res = await new SimpleJsonPostMethod( JsonValue result = null;
"http://dev.pschneider.fr/api/gcm/register", var authHeader = $"Bearer {AccessToken}";
"Authorization: Bearer "+AccessToken).InvokeJson( new { _logger.LogWarning($"using authorization Header {authHeader}");
GCMRegistrationId = "testGoogleRegistrationIdValue", try {
DeviceId = "TestDeviceId",
Model = "TestModel",
Platform = "External Web", using (var request = new SimpleJsonPostMethod(
Version = "0.0.1-rc1" "http://dev.pschneider.fr/api/gcm/register", authHeader))
} ); {
return Json(res); result = await request.InvokeJson(new
{
GCMRegistrationId = "testGoogleRegistrationIdValue",
DeviceId = "TestDeviceId",
Model = "TestModel",
Platform = "External Web",
Version = "0.0.1-rc1"
});
}
}
catch (Exception ex) {
return View("Index", model: new { error = ex.Message });
}
return View("Index", model: result?.ToString());
} }
protected string AccessToken { protected string AccessToken
get { {
get
{
var claim = HttpContext.User?.FindFirst("access_token"); var claim = HttpContext.User?.FindFirst("access_token");
if (claim == null) { if (claim == null)
{
throw new InvalidOperationException("no access_token"); throw new InvalidOperationException("no access_token");
} }

Loading…