使用 restsharp 获取 api 键时出错
error getting the api key using restsharp
我无法检索我的 api 密钥和用户 ID。我使用 Console.WriteLine
检查我的值,它们只是空的。
我不应该能够检索这些值吗?
var client = new RestClient("http://myproject/");
var request = new RestRequest("api/ApiKey?email=" + email + "&password=" + password, Method.GET);
var queryResult = client.Execute(request);
if (queryResult.StatusCode == HttpStatusCode.OK)
{
var deserial = new JsonDeserializer();
var x = deserial.Deserialize<ApiKey>(queryResult);
Application.Current.Properties["ApiKey"] = x.UserApiKey;
Application.Current.Properties ["UserId"] = x.UserId;
Console.WriteLine ("here");
Console.WriteLine ("key:"+x.UserApiKey);
//do this
}
else
{
// do this
}
如果queryResult.Content
持有以下json结构:
{
"ApiKey":"rY88liT/BE98t2e3SLXnCQ==",
"UserId":1
}
您要反序列化的对象应该如下所示:
public class ApiKeyOjbect
{
public string ApiKey { get; set; }
public string UserId { get; set; }
}
更简单的方法是直接序列化结果
var queryResult = client.Execute<ApiKeyOjbect>(request);
我无法检索我的 api 密钥和用户 ID。我使用 Console.WriteLine
检查我的值,它们只是空的。
我不应该能够检索这些值吗?
var client = new RestClient("http://myproject/");
var request = new RestRequest("api/ApiKey?email=" + email + "&password=" + password, Method.GET);
var queryResult = client.Execute(request);
if (queryResult.StatusCode == HttpStatusCode.OK)
{
var deserial = new JsonDeserializer();
var x = deserial.Deserialize<ApiKey>(queryResult);
Application.Current.Properties["ApiKey"] = x.UserApiKey;
Application.Current.Properties ["UserId"] = x.UserId;
Console.WriteLine ("here");
Console.WriteLine ("key:"+x.UserApiKey);
//do this
}
else
{
// do this
}
如果queryResult.Content
持有以下json结构:
{
"ApiKey":"rY88liT/BE98t2e3SLXnCQ==",
"UserId":1
}
您要反序列化的对象应该如下所示:
public class ApiKeyOjbect
{
public string ApiKey { get; set; }
public string UserId { get; set; }
}
更简单的方法是直接序列化结果
var queryResult = client.Execute<ApiKeyOjbect>(request);