0
我正在嘗試構建某種類似REST的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.net)手動序列化JSON?下面是我的客戶
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? –