AngularJS AJAX - $http

AngularJS $http சேவையைப் பயன்படுத்தி தரவுகளை படிக்கவும்

AngularJS AJAX - $http

$http என்பது தொலை தரவு சேவையகங்களில் இருந்து தரவுகளைப் படிக்க AngularJS வழங்கும் ஒரு சேவையாகும்.

AngularJS $http

AngularJS $http சேவை சேவையகத்திற்கு கோரிக்கையை அனுப்பி, பதிலைத் திரும்பப் பெறுகிறது.

உதாரணம்

சேவையகத்திற்கு எளிய கோரிக்கையை அனுப்பி, முடிவை தலைப்பில் காண்பிக்கவும்:

<div ng-app="myApp" ng-controller="myCtrl">

<p>இன்றைய வரவேற்பு செய்தி:</p>
<h1>{{myWelcome}}</h1>

</div>

<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope, $http) {
  $http.get("welcome.htm")
  .then(function(response) {
    $scope.myWelcome = response.data;
  });
});
</script>

முறைகள்

மேலே உள்ள உதாரணம் $http சேவையின் .get முறையைப் பயன்படுத்துகிறது.

.get முறை $http சேவையின் குறுகிய முறையாகும்.

பல குறுகிய முறைகள் உள்ளன:

மேலே உள்ள முறைகள் அனைத்தும் $http சேவையை அழைப்பதன் குறுகிய வழிகளாகும்:

உதாரணம்

var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope, $http) {
  $http({
    method : "GET",
    url : "welcome.htm"
  }).then(function mySuccess(response) {
    $scope.myWelcome = response.data;
  }, function myError(response) {
    $scope.myWelcome = response.statusText;
  });
});

மேலே உள்ள உதாரணம் ஒரு பொருளை வாதமாகப் பயன்படுத்தி $http சேவையை செயல்படுத்துகிறது.

இந்த பொருள் HTTP முறை, URL, வெற்றியடைந்தால் என்ன செய்ய வேண்டும் மற்றும் தோல்வியடைந்தால் என்ன செய்ய வேண்டும் என்பதைக் குறிப்பிடுகிறது.

பண்புகள்

சேவையகத்திலிருந்து வரும் பதில் பின்வரும் பண்புகளைக் கொண்ட ஒரு பொருளாகும்:

உதாரணம்

var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope, $http) {
  $http.get("welcome.htm")
  .then(function(response) {
    $scope.content = response.data;
    $scope.statuscode = response.status;
    $scope.statustext = response.statusText;
  });
});

பிழைகளைக் கையாள, .then முறையில் இன்னும் ஒரு செயல்பாட்டைச் சேர்க்கவும்:

உதாரணம்

var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope, $http) {
  $http.get("wrongfilename.htm")
  .then(function(response) {
    // முதல் செயல்பாடு வெற்றியைக் கையாளுகிறது
    $scope.content = response.data;
  }, function(response) {
    // இரண்டாவது செயல்பாடு பிழையைக் கையாளுகிறது
    $scope.content = "ஏதோ தவறு நடந்தது";
  });
});

JSON

பதிலிலிருந்து பெறும் தரவு JSON வடிவத்தில் இருக்கும் என்று எதிர்பார்க்கப்படுகிறது.

JSON என்பது தரவைக் கொண்டு செல்ல சிறந்த வழியாகும், மேலும் இது AngularJS அல்லது வேறு எந்த JavaScript இலும் பயன்படுத்த எளிதானது.

உதாரணம்:

சேவையகத்தில் 15 வாடிக்கையாளர்களைக் கொண்ட JSON பொருளைத் திரும்பத் தரும் ஒரு கோப்பு உள்ளது, இவை அனைத்தும் records என்ற அணியில் பொதியப்பட்டுள்ளன.

JSON பொருளைப் பார்க்க இங்கே கிளிக் செய்யவும்.

உதாரணம்

ng-repeat உத்தரவு ஒரு அணியின் வழியாகச் சுழல்வதற்கு சிறந்தது:

<div ng-app="myApp" ng-controller="customersCtrl">

<ul>
  <li ng-repeat="x in myData">
    {{ x.Name + ', ' + x.Country }}
  </li>
</ul>

</div>

<script>
var app = angular.module('myApp', []);
app.controller('customersCtrl', function($scope, $http) {
  $http.get("customers.php").then(function(response) {
    $scope.myData = response.data.records;
  });
});
</script>

பயன்பாடு விளக்கம்:

பயன்பாடு customersCtrl கட்டுப்படுத்தியை வரையறுக்கிறது, இது $scope மற்றும் $http பொருளைக் கொண்டுள்ளது.

$http என்பது வெளிப்புற தரவைக் கோருவதற்கான ஒரு XMLHttpRequest பொருளாகும்.

$http.get() JSON தரவை https://www.jassifteam.com/angularjs/customers.php இலிருந்து படிக்கிறது.

வெற்றியில், கட்டுப்படுத்தி, நோக்கத்தில், சேவையகத்திலிருந்து JSON தரவைக் கொண்ட myData என்ற பண்பை உருவாக்குகிறது.

பயிற்சி

கீழே உள்ள பயிற்சியில் $http சேவையைப் பற்றிய உங்கள் புரிதலை சோதிக்கவும்:

$http சேவை பயிற்சி

$http என்பது சேவையகத்துடன் தொடர்பு கொள்ள AngularJS வழங்கும் சேவையாகும்
✓ சரி! $http தொலை தரவு சேவையகங்களுடன் தொடர்பு கொள்ள பயன்படுகிறது
$http என்பது ஒரு தனி JavaScript நூலகமாகும்
✗ தவறு! $http என்பது AngularJS இன் ஒருங்கிணைந்த பகுதியாகும்
.then() முறை வெற்றி மற்றும் பிழை செயல்பாடுகளைக் கையாள பயன்படுகிறது
✓ சரி! .then() இரண்டு செயல்பாடுகளை ஏற்கும் - வெற்றி மற்றும் பிழை
$http GET முறை மட்டுமே JSON தரவைப் பெற முடியும்
✗ தவறு! $http பல முறைகளைக் கொண்டுள்ளது: GET, POST, PUT, DELETE போன்றவை