50 Pertanyaan dan Jawaban Wawancara API Web Asp.Net Teratas

Anonim

Unduh PDF

1) Apa itu API Web?

WebAPI adalah kerangka kerja yang membantu Anda membangun / mengembangkan layanan HTTP.

2) Mengapa Web API diperlukan? Apakah mungkin menggunakan layanan RESTful menggunakan WCF?

Ya, kami masih dapat mengembangkan layanan RESTful dengan WCF. Namun, ada dua alasan utama yang meminta pengguna untuk menggunakan API Web daripada layanan RESTful.

  • Web API meningkatkan pendekatan TDD (Test Data Driven) dalam pengembangan layanan RESTful.
  • Jika kami ingin mengembangkan layanan RESTful di WCF, Anda pasti membutuhkan banyak pengaturan konfigurasi, templat URI, kontrak & titik akhir untuk mengembangkan layanan RESTful menggunakan API web.

3) Mengapa memilih API Web?

  • Ini digunakan untuk membuat Layanan HTTP sederhana berbasis non-SOAP
  • Ini juga merupakan metode mudah untuk pembuatan dengan API Web. Dengan Layanan REST WCF
  • Ini didasarkan pada HTTP dan mudah untuk didefinisikan, diekspos, dan dikonsumsi dengan cara REST-ful.
  • Ini adalah arsitektur yang ringan dan ideal untuk perangkat yang memiliki bandwidth terbatas seperti smartphone.

4) Apakah benar bahwa ASP.NET Web API telah menggantikan WCF?

Ini sama sekali tidak benar bahwa ASP.NET Web API telah menggantikan WCF. Faktanya, ini adalah cara lain untuk membangun layanan berbasis non-SOAP, yaitu string XML atau JSON biasa.

5) Apa keuntungan dari Web API?

Keuntungan dari API Web adalah:

  • OData
  • Filter
  • Negosiasi Isi
  • Hosting Sendiri
  • Rute
  • Binding Model

6) Apa jenis pengembalian utama yang didukung dalam API Web?

Tindakan pengontrol API Web dapat mengembalikan nilai-nilai berikut:

  • Void - Ini akan mengembalikan konten kosong
  • HttpResponseMessage - Ini akan mengubah respons menjadi pesan HTTP.
  • IHttpActionResult - secara internal memanggil ExecuteAsync untuk membuat HttpResponseMessage
  • Jenis lain - Anda dapat menulis nilai pengembalian berseri ke dalam isi respons

7) API Web mendukung protokol mana?

Aplikasi Web mendukung protokol HTTP.

8) Kerangka .NET mana yang mendukung API Web?

NET 4.0 dan versi di atasnya mendukung API web.

9) API Web menggunakan pustaka sumber terbuka manakah berikut ini untuk serialisasi JSON?

API Web menggunakan pustaka Json.NET untuk serialisasi JSON.

10) Secara default, API Web mengirimkan respons HTTP dengan kode status mana dari kode status berikut untuk semua pengecualian yang tidak tertangkap?

500 Internal Server Error

11) Apa kerugian terbesar dari "Jenis Pengembalian Lainnya" di API Web?

Kerugian terbesar dari pendekatan ini adalah Anda tidak dapat langsung mengembalikan kode kesalahan seperti kesalahan 404.

12) Bagaimana Anda membuat HtmlResponseMessage?

Berikut adalah cara membangun untuk melakukannya,

public class TestController : ApiController{public HttpResponseMessage Get(){HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK, "value");response.Content = new StringContent("Testing", Encoding.Unicode);response.Headers.CacheControl = new CacheControlHeaderValue(){MaxAge = TimeSpan.FromMinutes(20)};return response;}}

13) Apa itu Perutean API Web?

Routing adalah pencocokan pola seperti di MVC.

Semua rute terdaftar di Tabel Rute.

Sebagai contoh:

Routes.MapHttpRoute(Name: "ExampleWebAPIRoute",routeTemplate: “api/{controller}/{id}defaults: new { id = RouteParameter.Optional}

14) Apa itu SOAP?

SOAP adalah format pesan XML yang digunakan dalam interaksi layanan web. Ini memungkinkan untuk mengirim pesan melalui HTTP atau JMS, tetapi protokol transport lainnya dapat digunakan. Ini juga merupakan protokol perpesanan berbasis XML untuk bertukar informasi antar komputer.

15) Apa keuntungan menggunakan REST di Web API?

REST digunakan untuk membuat lebih sedikit transfer data antara klien dan server yang membuatnya ideal untuk digunakan di aplikasi seluler. API Web juga mendukung protokol HTTP. Oleh karena itu, ini memperkenalkan kembali cara tradisional dari kata kerja HTTP untuk komunikasi.

16) Bagaimana kita dapat menggunakan API Web dengan Formulir Web ASP.NET?

API Web dapat digunakan dengan Formulir Web ASP.NET

Ini dapat dilakukan dalam tiga langkah sederhana:

  1. Buat Pengontrol API Web,
  2. Tambahkan tabel perutean ke metode Application_Start dari Global.sax
  3. Maka Anda perlu membuat metode Panggilan AJAX jQuery ke Web API dan mendapatkan data.

17) Bagaimana Anda dapat membatasi Akses ke API Web ke Kata Kerja HTTP Tertentu?

Pemrograman atribut memainkan peran penting. Sangat mudah untuk membatasi akses ke metode ASP.NET Web API untuk dipanggil menggunakan metode HTTP tertentu.

18) Dapatkah Anda menggunakan API Web dengan Formulir Web ASP.NET?

Ya, Anda dapat menggunakan API Web dengan formulir web ASP.Net. Karena dibundel dengan kerangka ASP.NET MVC. Namun, ini dapat digunakan dengan ASP.NET Web Form.

19) Bagaimana cara menetapkan nama alias untuk ASP.NET Web API Action?

Kami dapat memberikan nama alias untuk tindakan API Web sama seperti dalam kasus ASP.NET MVC dengan menggunakan atribut "ActionName" sebagai berikut:

[HttpPost][ActionName("SaveStudentInfo")]public void UpdateStudent(Student aStudent){StudentRepository.AddStudent(aStudent);}

20) Apa arti TestApi?

TestApi adalah pustaka utilitas API. Menggunakan pengembang penguji perpustakaan ini dapat membuat alat pengujian dan pengujian otomatis untuk aplikasi .NET menggunakan struktur data dan algoritma.

21) Jelaskan filter pengecualian?

Ini akan dieksekusi ketika pengecualian tidak ditangani dan dibuang dari metode pengontrol. Alasan pengecualian bisa apa saja. Filter pengecualian akan menerapkan antarmuka "IExceptionFilter".

22) Bagaimana kita bisa mendaftarkan filter pengecualian dari aksi?

Kita dapat mendaftarkan filter pengecualian dari tindakan menggunakan kode berikut:

[NotImplExceptionFilter]public TestCustomer GetMyTestCustomer(int custid){//write the code}

23) Bagaimana Anda dapat mengembalikan View dari metode ASP.NET Web API?

Tidak, kami tidak dapat mengembalikan tampilan dari Metode API Web ASP.NET. API Web membuat layanan HTTP yang merender data mentah. Namun, itu juga dimungkinkan dalam aplikasi ASP.NET MVC.

24) Bagaimana cara mendaftarkan filter pengecualian secara global?

Dimungkinkan untuk mendaftarkan filter pengecualian secara global menggunakan kode berikut-

GlobalConfiguration.Configuration.Filters.Add (baru

MyTestCustomerStore.NotImplExceptionFilterAttribute ());

25) Jelaskan apa itu REST and RESTFUL?

REST mewakili Transfer Negara Representasional; itu benar-benar aspek baru dalam menulis aplikasi web.

RESTFUL: Istilah yang ditulis dengan menerapkan konsep arsitektur REST disebut RESTful services. Ini berfokus pada sumber daya sistem dan bagaimana status sumber daya harus diangkut melalui protokol HTTP.

26) Beri saya satu contoh Perutean API Web?

Config.Routes.MapHttpRoute(name: "MyRoute,"//route namerouteTemplate: "api/{controller}/{action}/{id}",//as you can see "API" is at the beginning.defaults: new { id = RouteParameter.Optional });

27) Bagaimana Anda menangani kesalahan dalam API Web?

Beberapa kelas tersedia di API Web untuk menangani kesalahan. Mereka adalah HttpError, Filter Pengecualian, HttpResponseException, dan Mendaftarkan Filter Pengecualian.

28) Apa Fitur Baru yang disertakan dengan ASP.NET Web API 2.0?

Fitur terbaru dari ASP.NET Web API framework v2.0 adalah sebagai berikut:

  • Perutean Atribut
  • Berbagi Sumber Daya Lintas Asal
  • Otentikasi Eksternal
  • Buka Antarmuka Web NET
  • HttpActionResult
  • OData API Web

29) Bagaimana Anda membatasi metode akses ke kata kerja HTTP tertentu di API Web?

Dengan bantuan Atribut (seperti kata kerja HTTP), dimungkinkan untuk menerapkan pembatasan akses di API Web.

Dimungkinkan untuk mendefinisikan kata kerja HTTP sebagai atribut untuk membatasi akses. Contoh:

[HttpPost]public void Method1(Class obj){//logic

30) Bagaimana Anda bisa melewatkan beberapa tipe kompleks di Web API?

Dua metode untuk meneruskan tipe kompleks di Web API -

Menggunakan ArrayList dan Newtonsoft array

31) Tulis kode untuk melewatkan ArrayList di Web API?

ArrayList paramList = new ArrayList();Category c = new Category { CategoryId = 1, CategoryName =“MobilePhones”};Product p = new Product { Productcode = 1, Name = “MotoG”, Price = 15500, CategoryID = 1 };paramList.Add(c);paramList.Add(p);

32) Sebutkan alat atau API untuk mengembangkan atau menguji api web?

Alat pengujian untuk layanan web untuk REST API meliputi:

  1. Jersey API
  2. CFX
  3. Sumbu
  4. Restlet

33) Apa itu REST?

REST adalah gaya arsitektur. Ini telah menetapkan pedoman untuk membuat layanan yang dapat diskalakan. REST digunakan dengan protokol HTTP menggunakan verba GET, PUT, POST dan DELETE.

34) Bagaimana cara menguji unit Web API?

Kami dapat melakukan pengujian Unit menggunakan alat API Web seperti Fiddler.

Berikut, beberapa pengaturan yang harus dilakukan jika Anda menggunakan

Fiddler -Compose Tab -> Enter Request Headers -> Masukkan Badan Permintaan dan jalankan

35) Bagaimana kita bisa membatasi akses ke metode dengan kata kerja HTTP tertentu di API Web?

Pemrograman atribut banyak digunakan untuk fungsi ini. API Web juga memungkinkan pembatasan akses metode panggilan dengan bantuan kata kerja HTTP tertentu. Dimungkinkan juga untuk mendefinisikan kata kerja HTTP sebagai metode atribut atas.

36) Apa kegunaan DelegatingHandler?

DelegatingHandler digunakan di Web API untuk merepresentasikan Message Handler sebelum melakukan perutean.

37) Bagaimana kita bisa mendaftarkan filter pengecualian dari aksi?

Kita dapat mendaftarkan filter pengecualian dari tindakan menggunakan kode berikut

[NotImplExceptionFilter]public TestCust GetMyTestCust (int custno){//write the code}

38) Beri tahu saya potongan kode untuk menunjukkan bagaimana kita dapat mengembalikan kesalahan 404 dari HttpError?

Kode untuk mengembalikan kesalahan 404 dari HttpError

string message = string.Format (“TestCustomer id = {0} not found”, customerid);

return Request.CreateErrorResponse (HttpStatusCode.NotFound, pesan);

39) Jelaskan potongan kode untuk mendaftarkan filter pengecualian dari pengontrol?

[NotImplExceptionFilter]public class TestCustController : Controller{//Your code goes here}

40) API Web mendukung protokol mana?

Aplikasi Web mendukung protokol HTTP

41) Manakah dari kerangka .NET berikut yang mendukung API Web?

API Web didukung oleh versi NET 4.0

42) API Web menggunakan pustaka mana untuk serialisasi JSON?

API Web menggunakan pustaka Json.NET untuk serialisasi JSON.

43) Secara default, API Web mengirimkan respons HTTP dengan kode status mana dari kode status berikut untuk semua pengecualian yang tidak tertangkap?

500 Internal Server Error

44) Jelaskan metode untuk menangani kesalahan menggunakan HttpError di Web API?

Dalam WEB API HttpError digunakan untuk membuang info kesalahan dalam isi respons. Metode "CreateErrorResponse" juga dapat digunakan bersama ini, yang merupakan metode ekstensi yang ditentukan dalam "HttpRequestMessageExtension."

45) Bagaimana kita bisa mendaftarkan filter pengecualian secara global?

Kami dapat mendaftarkan filter pengecualian secara global menggunakan kode berikut:

GlobalConfiguration.Configuration.Filters.Add (new MyTestCustomerStore.NotImplExceptionFilterAttribute());

46) Bagaimana menangani kesalahan dalam API Web?

Beberapa kelas tersedia di API Web untuk menangani kesalahan. Mereka adalah HttpError, HttpResponseException, Exception Filters, Registering Exception Filters.

47) Apa manfaat WebAPI dibandingkan WCF?

Layanan WCF menggunakan protokol SOAP sedangkan HTTP tidak pernah menggunakan protokol SOAP. Itulah mengapa layanan WebAPI ringan karena SOAP tidak digunakan. Ini juga mengurangi data yang ditransfer untuk melanjutkan layanan. Selain itu, tidak perlu terlalu banyak konfigurasi. Oleh karena itu, klien dapat berinteraksi dengan layanan menggunakan kata kerja HTTP.

48) Sebutkan perbedaan antara MVC dan WebAPI

Framework MVC digunakan untuk mengembangkan aplikasi yang memiliki User Interface. Untuk itu, tampilan dapat digunakan untuk membangun antarmuka pengguna.

WebAPI digunakan untuk mengembangkan layanan HTTP. Aplikasi lain juga bisa disebut metode WebAPI untuk mengambil data itu.

49) Siapa yang dapat menggunakan WebAPI?

WebAPI dapat digunakan oleh semua klien yang mendukung kata kerja HTTP seperti GET, PUT, DELETE, POST. Karena layanan WebAPI tidak memerlukan konfigurasi apa pun, layanan ini sangat mudah digunakan oleh klien mana pun. Infract, bahkan perangkat portabel seperti perangkat Mobile dapat dengan mudah mengkonsumsi WebAPI yang tentunya merupakan keunggulan terbesar dari teknologi ini.

50) Bagaimana kami dapat memastikan bahwa API Web hanya mengembalikan data JSON?

Untuk membuat API Web membuat serial objek yang dikembalikan ke format JSON dan hanya mengembalikan data JSON. Untuk itu Anda harus menambahkan kode berikut di kelas WebApiConfig.cs di setiap Proyek API Web MVC:

//JsonFormatter//MediaTypeHeaderValueConfig.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json"));123//JsonFormatter//MediaTypeHeaderValueConfig.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json"))