Я пытаюсь создать какой-то RESTful-API, я знаю, что мой первый проект, вероятно, не похож на реальный шаблон дизайна RESTful. Однако мой реальный вопрос заключается в том, как я должен использовать свое обслуживание с помощью JSON?Потребление WebAPI JSON
В моем так называемом реальном мире, например, я хочу, чтобы мои пользователи войти в систему через службу таким образом у меня есть эта AuthenticationController
namespace RESTfulService.Controllers
{
public class AuthenticationController : ApiController
{
public string Get(string username, string password)
{
// return JSON-object or JSON-status message
return "";
}
public string Get()
{
return "";
}
}
}
Учитывая растущую популярность этой технологии я предположил, что очень мало код будет необходим для потребляя услугу. Мне действительно нужно сериализовать JSON вручную с помощью какого-то стороннего пакета, такого как json.net? Ниже мой проект для клиента
private static bool DoAuthentication(string username, string password)
{
var client = InitializeHttpClient();
HttpResponseMessage response = client.GetAsync("/api/rest/authentication").Result;
if (response.IsSuccessStatusCode)
{
//retrieve JSON-object or JSON-status message
}
else
{
// Error
}
return true;
}
private static HttpClient InitializeHttpClient()
{
HttpClient client = new HttpClient();
client.BaseAddress = new Uri("http://localhost/");
// Add an Accept header for JSON format.
client.DefaultRequestHeaders.Accept.Add(
new MediaTypeWithQualityHeaderValue("application/json"));
return client;
}
Как отправить JSON от службы и как интерпретировать его на клиенте?
Не полный ответ, но для использования служб REST вы должны взглянуть на RestSharp. –
Да, я изучал это, но я «надеялся» на какой-то код, который не зависел от третьей стороны. – dbd
На стороне сервера Web API автоматически сериализует возвращаемое значение (в JSON, если это то, что клиент запрашивает). Вы посмотрели http://www.asp.net/web-api/overview/getting-started-with-aspnet-web-api/tutorial-your-first-web-api? –