Запросы API и банки с сервером AzureC#

Место общения программистов C#
Ответить
Anonymous
 Запросы API и банки с сервером Azure

Сообщение Anonymous »

У меня есть этот метод в проекте ASP.NET MVC, который работает локально, но когда я пытаюсь опубликовать его в Azure, я не могу получить доступ к API, у меня нет результатов при попытке выполнить запросы ( & Get).
У кого-нибудь еще была такая проблема?

Код: Выделить всё

public async Task OnPostAsync(string returnUrl = null)
{
returnUrl ??= Url.Content("~/");

ExternalLogins = (await _signInManager.GetExternalAuthenticationSchemesAsync()).ToList();

if (ModelState.IsValid)
{
var result = await _signInManager.PasswordSignInAsync(Input.Email, Input.Password, Input.RememberMe, lockoutOnFailure: false);

if (result.Succeeded)
{
var client = _httpClientFactory.CreateClient();

using (var requestMessage = new HttpRequestMessage(HttpMethod.Post, "https://api.libreview.io/llu/auth/login"))
{
requestMessage.Headers.Add("version", "4.7");
requestMessage.Headers.Add("product", "llu.android");
requestMessage.Headers.Add("User-Agent", "LiveDiabetes/1.0.0");
requestMessage.Headers.Add("Accept", "*/*");
requestMessage.Headers.Add("Accept-Enconding", "gzip,deflate,br");
requestMessage.Headers.Add("Connection", "keep-alive");

requestMessage.Content = JsonContent.Create(new { email = Input.Email, password = Input.Password });

var response = await client.SendAsync(requestMessage);

var content = await response.Content.ReadAsStringAsync();

JObject loginjson = JsonConvert.DeserializeObject(content);

if (loginjson["data"]?["authTicket"]?["token"] == null)
{
var localLogin = await _signInManager.PasswordSignInAsync(Input.Email, Input.Password, Input.RememberMe, lockoutOnFailure: false);

if (localLogin.Succeeded)
{
_logger.LogInformation("User logged in locally.");
return LocalRedirect(returnUrl);
}
else
{
ModelState.AddModelError(string.Empty, "Login failed. The user does not exist or password is incorrect.");
}
}

HttpContext.Session.SetString("token", loginjson["data"]["authTicket"]["token"].ToString());
}

using (var requestMessage = new HttpRequestMessage(HttpMethod.Get, "https://api.libreview.io/llu/connections"))
{
requestMessage.Headers.Add("Authorization", "Bearer " + HttpContext.Session.GetString("token"));
requestMessage.Headers.Add("version", "4.7");
requestMessage.Headers.Add("product", "llu.android");
requestMessage.Headers.Add("User-Agent", "LiveDiabetes/1.0.0");
requestMessage.Headers.Add("Accept", "*/*");
requestMessage.Headers.Add("Accept-Enconding", "gzip,deflate,br");
requestMessage.Headers.Add("Connection", "keep-alive");

var response = await client.SendAsync(requestMessage);
var content = await response.Content.ReadAsStringAsync();

JObject connectionjson = JsonConvert.DeserializeObject(content);

HttpContext.Session.SetString("patientid", connectionjson["data"][0]["patientId"].ToString());
}

_logger.LogInformation("User logged in.");

return LocalRedirect(returnUrl);
}
else
{
ModelState.AddModelError(string.Empty, "Este utilizador não existe.");
return Page();
}
}

return Page();
}
Поскольку у меня нет проблем при работе локально, что я делаю не так?
Проблема не в том if, который регистрируется в клиенте, когда я не получаю результатов от API, потому что я могу войти в систему, используя свой сервер базы данных.

Подробнее здесь: https://stackoverflow.com/questions/783 ... ure-server
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»