இந்த கட்டுரையில் http வெர்ப்களான get, post, put, delete ஆகியவை ASP.NET WEB API-யில் எவ்வாறு பயன்படுகின்றன என்பது குறித்து காண இருக்கின்றோம்.
ASP.NET WEB API-யில் HTTP VERBS என்பதை நிகழ்த்துவதற்கான படி நிலைகள்.
படி -1.
ஒரு புதிய பிராஜெக்டை விசுவல்ஸ்டுடியோவில் திறந்து இடது பக்கம் விசுவல் c# என்பதில் web என்பதையும் மத்தியில் Asp.net web application என்பதையும் செலெக்ட் செய்து பிராஜெக்ட் பெயர் கொடுக்கவும்.அடுத்து வரும் டையலாக் பாக்சில் web api என்பதை தேர்வு செய்து ok கொடுக்கவும்.
படி 2
இப்பொழுது சொல்யூசன் எக்ஸ்ஃப்ளோரரில் asp.net mvc அப்ளிகேசனில் உள்ளது போல் ஒன்றுக்கு மேற்பட்ட ஃபோல்டெர்கள் இருக்கும். அதில் controllers ஃபோல்டெரில் valuecontrollrer என்று புதிதாய் ஒரு ஃபோல்டர் இருக்கும்.
அதில் பின் வரும் ஐந்து மெத்தட்கள் இருக்கும்.
இந்த கனட்ரோலரில் ஒரு ஸ்ட்ரிங்க் லிஸ்ட் வேரியபிளை உருவாக்கவும்.
அதற்கு மூன்று ஸ்ட்ரிங்குகளை மதிப்பிருத்தவும்.
- static List<string> languages = new List<string>() {
- "C#","ASP.NET","MVC"
- };
இப்பொழுது Get மெத்தட் எழுதவும் . இது languages என்ற ஸ்ட்ரிங லிஸ்டின் மதிப்புகளை ரிடர்ன் செய்யும்.
1. · // GET api/values
2. public IEnumerable<string> Get()
3. {
4. return languages;
5. }
இப்பொழுது ஒரு குறிப்பிட்ட லிஸ்ட் ஐட்டத்தை மட்டும் ரிடர்ன் செய்ய Get மெத்தடை ஒரு இன்ட் ஆர்க்கியூமெண்ட் செலுத்துவது பாஸ் செய்வது போல் ஓவர் லோட் செய்யவேண்டும். இது லிஸ்டின் ஒரு குறிப்பிட்ட இண்டெக்சில் உள்ள ஐட்டத்தை மட்டும் ரிடர்ன் செய்ய வேண்டும்.
- // GET api/values/5
- public string Get(int id)
- {
- return languages[id];
- }
ஒரு டேட்டாவை சேர்க்கவோ அல்லது சேமிக்கவோ Post மெத்தட் பயன்படுகின்றது.
- // POST api/values
- public void Post([FromBody]string value)
- {
- languages.Add(value);
- }
ஒரு டேட்டாவை அப்டேட் மற்றும் டெலீட் செய்ய put, delete மெத்தட்கள் பயன்படுகின்றன.
- // PUT api/values/5
- public void Put(int id, [FromBody]string value)
- {
- languages[id] = value;
- }
- // DELETE api/values/5
- public void Delete(int id)
- {
- languages.RemoveAt(id);
- }
படி 3
நாம் Fiddler பயன்படுத்தி http get, put, post, delete ஆக்சன் மெத்தட்களை கண்கானிக்க இருக்கின்றோல் இதை கீழ் வரும் முகவரியில் டவுன் லோட் செய்து நிறுவிக் கொள்ளவும்.
https://www.telerik.com/download/fiddler
பிராஜெக்ட் சொல்யூசனை பில்ட் செய்து நிரலை இயக்கவும்.
http://localhost:51860/api/values/
அதற்கு முன் Get மெத்தடில் ப்ரேக் பாயிண்ட் வைத்து நிரலை இயக்கவும். இது எந்த மெத்தட் அழைக்கப்படுகின்றது என்பதைக் காட்டும்.
மேலே உள்ள மெத்தடை பாராமீட்டர் ஏதும் இன்றி அழைக்கும் பொழுது Get மெத்தட் அழைக்கப்படுகின்றது.
கீழ்வருவது அதன் அவுட்புட்:(xml format).
index மதிப்பை பாராமீட்டர் ஆக அனுப்பும் பொழுது அது அந்த இண்டெக்சில் உள்ள குறிப்பிட்ட ஸ்ட்ரிங்கை மட்டும் ரிடர்ன் செய்யும்.
http://localhost:51860/api/values/1
படி 4.
இப்பொழுது ஃபிட்லெர் பயன்படுத்தில் POST, PUT, DELETE மெத்தட்கள் எவ்வாறு அழைக்கப்படுகின்றன என்பதை கண்கானிப்போம்.
கீழே வருவதை காப்பி செய்து ஃபிட்லெர் கன்போசர் டேப்பை கிளிக் செய்து பேஸ்ட் செய்யவும். பிறகு என்டெர் தட்டவும்.
இப்பொழுது ஃபிட்லெரில் லேட்டெஸ்ட் URL ஐ கிளிக் செய்தால் அவுட்புட் காட்டப்படும்.
இப்பொழுது பிரவுசரை ரெஃப்ரெஸ் செய்யவும்.இப்பொழுது கம்போஸ் டேட்டை கிளிக் செய்து டிராப் டவுன் லிஸ்டில் Get என்பதை தேர்வு செய்யவும்.லேட்டஸ்ட் url ஐ கிளிக் செய்து டிராக் செது கம்போசர் டேட்டில் விடவும்.
Host, Connection, Catch-Control, User-Agent and Accept போன்ற விவரங்கள் காட்டப்படும்.
ஒரு ஸ்ட்ரிங்கை புதிதாக சேர்த்தல்.
கம்போஸ் டேப்பை கிளிக் செய்து டிராப் டவுனில் post என்பதை தேர்வு செய்யவும். ரிக்வெஸ்ட் பாடியில் புதிய ஸ்டிரிங்கை டைப் செய்யவும்.
Content-Type:application/JSON என டைப் செய்து execute பட்டனை கிளிக் செய்யவும்.
இப்பொழுது இடது புறம் உள்ள லேடெஸ்ட்url ஆனதை டபிள் கிளிக் செய்தால் ரெஸ்பான்ஸ் ஆனது 204 no content என இருக்கும் காரணம் போஸ்ட் மெத்தட் ஆனது டிஃபால்ட் ரிடர்ன் டைப் வாய்ட் ஆகும்.
பிறகு புதிதான ஸ்ட்ரிங்க் சேர்க்கப்பட்டுள்ளதா என்பதை டெஸ்ட் செய்யவும்,.
டிராப்டவுனில் get என்பதை செலெக்ட் செய்யவும். ரிக்வெஸ்ட் பாடியில் உள்ளதை டெலீட் செய்யவும்.எக்சிக்யூட் பட்டனை கிளிக் செய்யவும், பிறகு இடது புறம் உள்ள லேட்டெஸ்ட் URL கிளிக் செய்தால் அவுட்புட் காட்டப்படும்.
இப்பொழுது அப்டேட் செய்வதற்கு டிராப் டவுனில் PUT என்பதை தேர்வு செய்யவும் பாடியில் புதிய மதிப்பை டைப் செய்யவும் . URL -ல் பாராமீட்டரை தேர்த்து டைப் செய்யவும்.பிறகு எக்சிக்யூட் பட்டனை கிளிக் செய்யவும்.
இப்பொழுது பேஜை ரெஃஃப்ரெஷ் செய்து கெட் மெத்தடை தேர்வு செய்து எக்சிகியூட் பட்டனை கிளிக் செய்து இடது புறம் உள்ள லேட்டெஸ்ட் URL ஆனதை டபிள் கிளிக் செய்தால் அப்டேட் செய்யப்பட்ட புதிய மதிப்பை காட்டலாம்.
இப்பொழுது ஒரு ஸ்ட்ரிங்கை டெலீட் செய்வதற்கு பக்கத்தை ரெஃப்ரெஸ் செய்து டிராப்டவுனில் DELETE என்பதை தேர்வு செய்து இண்டெக்சை URL உடன் இண்டெக்சை டைப் செய்து எக்சிகியூட் பட்டனை கிளிக் செய்தால் அந்த இண்டெக்சில் உள்ள மதிப்பு டெலீட் செய்யப்படும்.
நன்றி.
முத்து கார்த்திகேயன்,மதுரை.