首页 > 解决方案 > 我正在从 Xamarin Forms 向 Rest Api 发送请求,但它没有看到字符串

问题描述

我创建了一个登录类,我在其中保存了一个令牌。当我尝试发送令牌以查询 REST API 时,它看不到它。我已经检查过了,我正在收到令牌。如果你们中的一些人可以帮助我检查这个问题,我将非常感激。

这是我保存令牌的类。

public class Login
{
    [JsonProperty("status")]
    public string status { get; set; }

    [JsonProperty("message")]
    public string message { get; set; }

    [JsonProperty("jwt")]
    public string token { get; set; }
}

这是我调用该方法的按钮:

Repository ccs = new Repository();

public LinkPage()
{
    InitializeComponent();
}

public async void OnUpdateUser(object sender, EventArgs e)
{
    try
    {     
        Login tokenreq = new Login();

        userInfo tokeninfo = ccs.postUserInfo(tokenreq.token).Result;
        Dialogs.ShowLoading(tokeninfo.Message.ToString()); ;
        await Task.Delay(2000);
        Dialogs.HideLoading();
    }
    catch (Exception ex)
    {
        await DisplayAlert("Login Error", ex.Message, "Intente de nuevo mas tarde");
    }
}

这是方法:

public async Task<userInfo> postUserInfo(string token)
{
    object param = new { token = token };
    var jsonObj = JsonConvert.SerializeObject(param);

    using (HttpClient client = new HttpClient())
    {
        StringContent content = new StringContent(jsonObj.ToString(), Encoding.UTF8, "application/json");
        var request = new HttpRequestMessage()
        {
            RequestUri = new Uri("https://crmpuntos.oliviadirect.co/services/user/info.php"),
            Method = HttpMethod.Post,
            Content = content
        };

        var response = await client.SendAsync(request).ConfigureAwait(false);
        string dataResult = response.Content.ReadAsStringAsync().Result;
        userInfo result = JsonConvert.DeserializeObject<userInfo>(dataResult);

        return result;
    }
}

标签: c#api

解决方案


我找到了答案

我需要将令牌存储在 SecureSTorage 中,之后一切正常


推荐阅读