如何在 xamarin.forms 中的 REST api 中发送参数?

How to send parameter in REST api in xamarin.forms?

如何在 xamarin.forms 中以 REST api 发送参数?

我使用 PCL 在 xamarin 中创建了 REST API 项目。

当我使用 Xamarin.forms(便携式 Class 库)中的以下代码调用简单 REST api 时,我已成功收到 json 响应。

using (var cl = new HttpClient())
{
    var result = await cl.GetStringAsync("http://192.168.1.100/apps/jara/web/api/user/test");
    jsonResponseClass des = JsonConvert.DeserializeObject<jsonResponseClass>(result);
    lbl1.Text = des.code + " " + des.status + " " + des.message;
}

public class jsonResponseClass
{
    public string code { get; set; }
    public string status { get; set; }
    public string message { get; set; }
}

使用上面的代码我得到了响应

{
    code: 200,
    status: "ok",
    message: "hello"
}

REST API 响应类型是 JSON 并且类型是 POST

现在,我想使用参数调用 Login Api。

http://192.168.1.100/apps/jara/web/api/user/login

参数:email_id密码

这个 api 成功响应类型是....

{
    code: 200,
    status: "Success",
    User: {
        userid: 126,
        token: "d154s4d54s654df5s4df56s4df564s5df4",
        email: "shahbuddin@gmail.com",
        mobile_number: "9898989898"
    },
    message: "Successfully logged in"
}

我能做什么?

最后我可以使用下面的代码来做到这一点....

using (var cl = new HttpClient())
{
    var formcontent = new FormUrlEncodedContent(new[]
    {
            new KeyValuePair<string,string>("email_id","shahbuddin@peerbits.com"),
            new KeyValuePair<string, string>("password","shah")
        });


    var request = await cl.PostAsync("http://192.168.1.100/apps/jara/web/api/user/login", formcontent);

    request.EnsureSuccessStatusCode();

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

    jsonResponselogin res = JsonConvert.DeserializeObject<jsonResponselogin>(response);

    lbl1.Text = res.code + " " + res.status + " " + res.message;

}

此代码有助于使用参数

调用 REST API

谢谢...