带参数的Angular JS AJAX调用

时间:2014-03-26 04:17:38

标签: javascript ajax asp.net-mvc angularjs parameters

没有方法Get的参数,代码可以工作,但是如果方法要求参数,则返回错误404。如何使用Angular JS正确发送参数?

factory.test = function () {
    var q = $q.defer();

    $http({
        method: "GET",
        url: url + "/dataEntry/test",
        data: {
            sampletext : "sample"
        }
    })
        .success(function (data, status, headers, config) { 
            q.resolve(data);
        })
        .error(function (data, status, headers, config) { 
            q.reject(data);
        });

    return q.promise;
}; 

    [Route("test")] 
    public String Get(string sampletext)
    { 
        return "Reply coming from data entry controller" + sampletext; 
    }

2 个答案:

答案 0 :(得分:15)

由于它是GET请求,因此您不应该发送数据。您需要发送查询字符串。

将您的data更改为params

$http({
    method: "GET",
    url: url + "/dataEntry/test",
    params: {
        sampletext : "sample"
    }
})

来源:http://docs.angularjs.org/api/ng/service/$http

答案 1 :(得分:-2)

$http({
    url: "/saveInfo",
    method: 'Post'
}).then(function(response) {
    console.log("saved successfully");
}, function(response) {
    console.log("Error message");   
});