2013-07-05 36 views
11

Có thể gọi phương thức Web Api từ máy khách .NET 2.0 không?Gọi dịch vụ Web Api từ máy khách .NET 2.0

Đề cập đến các hướng dẫn ở đây: http://www.asp.net/web-api/overview/web-api-clients/calling-a-web-api-from-a-net-client

Một số các dlls cho khách hàng dường như không tương thích với .NET 2.0

Có cách nào để gọi một phương thức web Api từ a. NET 2.0 khách hàng mà không cần thêm bất kỳ dlls?

Trả lời

23

Có thể gọi phương thức Web Api từ máy khách .NET 2.0 không?

Tất nhiên điều đó là có thể. Bạn có thể gọi nó từ hoàn toàn bất kỳ ứng dụng khách HTTP nào. Khách hàng có thể không còn là .NET.

Ví dụ trong .NET 2.0, bạn có thể sử dụng lớp WebClient:

using (var client = new WebClient()) 
{ 
    client.Headers[HttpRequestHeaders.Accept] = "application/json"; 
    string result = client.DownloadString("http://example.com/values"); 
    // now use a JSON parser to parse the resulting string back to some CLR object 
} 

và nếu bạn muốn đăng một số giá trị:

using (var client = new WebClient()) 
{ 
    client.Headers[HttpRequestHeader.ContentType] = "application/json"; 
    client.Headers[HttpRequestHeader.Accept] = "application/json"; 
    var data = Encoding.UTF8.GetBytes("{\"foo\":\"bar\"}"); 
    byte[] result = client.UploadData("http://example.com/values", "POST", data); 
    // now use a JSON parser to parse the resulting string back to some CLR object 
} 
+0

có, nhưng cuối cùng chúng ta cần phải chuyển đổi byte phản hồi lại chuỗi để hiển thị phản hồi thích hợp –

Các vấn đề liên quan