Ich habe eine API mit JSON-Daten http://bbs.eamobiledirectory.com/Mobile/MobileApi.aspx?Action=SalesProfile&unm=sheila&upass=1234. Ich möchte eine Login-Prüfung durchführen, bei der, wenn jemand den Benutzernamen in den Eintrag eingibt, der Benutzername durch den Benutzernamen in der API verifiziert wird, dann erfolgt eine Authentifizierung.Login Logic mit Xamarin Forms
Wie kann ich JSON-Deserialisierung verwenden, um dies zu erreichen?
EDIT
Dies ist, wie ich es war die Umsetzung:
public async void onLogingingIn(object sender, System.EventArgs e)
{
string Usename = username.Text.ToString();
string Password = password.Text.ToString();
string url = "http://bbs.eamobiledirectory.com/Mobile/MobileApi.aspx?Action=SalesProfile&unm=" + Usename + "a&upass=" + Password;
var response = await client.GetStringAsync(url);
var todoItems = JsonConvert.DeserializeObject<Login>(response);
var Usnmae = todoItems.username;
await DisplayAlert("Notification ", "" + Usnmae, "OK");
}
Aber ich immer diese Fehler in meinem logcat:
Newtonsoft.Json.JsonSerializationException: Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'BBSTV.Login' because the type requires a JSON object (e.g. {"name":"value"}) to deserialize correctly.
To fix this error either change the JSON to a JSON object (e.g. {"name":"value"}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List<T> that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array.
Path '', line 1, position 1.
Es tut mir leid, aber ich stimme diese Frage als zu breit zu schließen. Sie bitten uns im Grunde, den Login-Teil Ihrer App ohne jeglichen Aufwand zu erstellen. Auch JSON-Deserialisierung ist nicht so schwer und es ist schon viel da draußen. Bitte lesen Sie die Seite [how to ask] (https://stackoverflow.com/help/how-to-ask), um zu erfahren, wie Sie eine richtige Frage stellen können. –
Es ist nicht breit Bruder, nur überprüfen Sie die Logik meiner API, es ist etwas klein, ich möchte wie ein Pseudocode –
Noch ein wenig Aufwand auf Ihrer Seite ist willkommen. Sie können einfach eine Klasse dafür mit [json2csharp] (http://json2csharp.com/) erstellen und sie einfach wie 'RootObject account = JsonConvert.DeserializeObject (json);' –