592 Stimmen

AngularJS übergibt Daten an $http.get Anfrage

Ich habe eine Funktion, die eine http POST-Anforderung ausführt. Der Code ist unten angegeben. Dies funktioniert gut.

 $http({
   url: user.update_path, 
   method: "POST",
   data: {user_id: user.id, draft: true}
 });

Ich habe eine andere Funktion für http GET und ich möchte Daten an diese Anforderung senden. Aber ich habe diese Option nicht in get.

 $http({
   url: user.details_path, 
   method: "GET",
   data: {user_id: user.id}
 });

Die Syntax für http.get ist

get(url, config)

2voto

Denys Wessels Punkte 16583

Hier ist ein vollständiges Beispiel für eine HTTP-GET-Anforderung mit Parametern unter Verwendung von angular.js in ASP.NET MVC:

CONTROLLER:

public class AngularController : Controller
{
    public JsonResult GetFullName(string name, string surname)
    {
        System.Diagnostics.Debugger.Break();
        return Json(new { fullName = String.Format("{0} {1}",name,surname) }, JsonRequestBehavior.AllowGet);
    }
}

VIEW:

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.min.js"></script>
<script type="text/javascript">
    var myApp = angular.module("app", []);

    myApp.controller('controller', function ($scope, $http) {

        $scope.GetFullName = function (employee) {

            //The url is as follows - ControllerName/ActionName?name=nameValue&surname=surnameValue

            $http.get("/Angular/GetFullName?name=" + $scope.name + "&surname=" + $scope.surname).
            success(function (data, status, headers, config) {
                alert('Your full name is - ' + data.fullName);
            }).
            error(function (data, status, headers, config) {
                alert("An error occurred during the AJAX request");
            });

        }
    });

</script>

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

    <input type="text" ng-model="name" />
    <input type="text" ng-model="surname" />
    <input type="button" ng-click="GetFullName()" value="Get Full Name" />
</div>

1voto

Mohib Punkte 177

Zum Senden einer Get-Anfrage mit Parameter verwende ich

  $http.get('urlPartOne\\'+parameter+'\\urlPartTwo')

So können Sie Ihre eigene Url-Zeichenkette verwenden

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X