Computer >> Máy Tính >  >> Lập trình >> C#

Làm cách nào để đăng dữ liệu lên URL cụ thể bằng cách sử dụng WebClient trong C #?

Chúng tôi có thể Lấy và Đăng dữ liệu từ Web API bằng ứng dụng khách Web. Máy khách web cung cấp các phương thức phổ biến để gửi và nhận dữ liệu từ Máy chủ

Ứng dụng khách web dễ sử dụng để sử dụng API Web. Bạn cũng có thể sử dụng httpClientinst thay cho WebClient

Lớp WebClient sử dụng lớp WebRequest để cung cấp quyền truy cập vào tài nguyên.

Các phiên bản WebClient có thể truy cập dữ liệu bằng bất kỳ hậu duệ WebRequest nào được đăng ký với phương thức WebRequest.RegisterPrefix.

Namespace:System.Net
Assembly:System.Net.WebClient.dll

UploadString Gửi một Chuỗi tới tài nguyên và trả về một Chuỗi chứa bất kỳ phản hồi nào.

Ví dụ

class Program{
   public static void Main(){
      User user = new User();
      try{
         using (WebClient webClient = new WebClient()){
            webClient.BaseAddress = "https://jsonplaceholder.typicode.com";
            var url = "/posts";
            webClient.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");
            webClient.Headers[HttpRequestHeader.ContentType] ="application/json";
            string data = JsonConvert.SerializeObject(user);
            var response = webClient.UploadString(url, data);
            var result = JsonConvert.DeserializeObject<object>(response);
            System.Console.WriteLine(result);
         }
      }
      catch (Exception ex){
         throw ex;
      }
   }
}
class User{
   public int id { get; set; } = 1;
   public string title { get; set; } = "First Data";
   public string body { get; set; } = "First Body";
   public int userId { get; set; } = 222;
}

Đầu ra

{
   "id": 101,
   "title": "First Data",
   "body": "First Body",
   "userId": 222
}