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,7 +42,8 @@ namespace testOauthClient.Controllers
[HttpPost] [HttpPost]
public async Task<IActionResult> PostDeviceInfo(CancellationToken cancellationToken) public async Task<IActionResult> PostDeviceInfo(CancellationToken cancellationToken)
{ {
/* using (var client = new HttpClient()) { /*
using (var client = new HttpClient()) {
var request = new HttpRequestMessage(HttpMethod.Post, "http://dev.pschneider.fr/api/gcm/register"); 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);
@ -46,22 +55,38 @@ namespace testOauthClient.Controllers
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}");
try {
using (var request = new SimpleJsonPostMethod(
"http://dev.pschneider.fr/api/gcm/register", authHeader))
{
result = await request.InvokeJson(new
{
GCMRegistrationId = "testGoogleRegistrationIdValue", GCMRegistrationId = "testGoogleRegistrationIdValue",
DeviceId = "TestDeviceId", DeviceId = "TestDeviceId",
Model = "TestModel", Model = "TestModel",
Platform = "External Web", Platform = "External Web",
Version = "0.0.1-rc1" Version = "0.0.1-rc1"
} ); });
return Json(res); }
}
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…