我试图发送AJAX POST请求MVC应用程序阿贾克斯POST使用JSON
$.ajax({
type: 'POST',
dataType: 'json',
data: {"FirstName":"chris","LastName":"cane"},
contentType: 'application/json',
url: "http://dev.irp.com/irp.Ajax.Search/home/Foo",
success: function (data) {
alert(data);
}
});
这个脚本使用jQuery MVC应用程序上的另一个领域是存在于ASP.NET应用程序在不同的服务器上。我的MVC应用程序处理代码如下
[HttpPost]
public JsonResult Foo(fromclient test)
{
var obj = new SearchMemberServiceClient();
var members = obj.FindMember(test.FirstName, test.LastName, "", "", "", "").Members;
IEnumerable<Bar> sorted =
from a in members
orderby a.FirstName ascending
group a by new
{
a.FormattedFullName,
a.MembershipsProxy[0].GoodFromDate,
a.MembershipsProxy[0].GoodThroughDate,
} into k
select new Bar
{
FormattedName = k.Key.FormattedFullName,
goodfrom = k.Key.GoodFromDate,
goodthru = k.Key.GoodThroughDate,
};
return Json(sorted.ToList());
}
public class Bar
{
public string FormattedName { get; set; }
public DateTime goodfrom { get; set; }
public DateTime goodthru { get; set; }
}
public class fromclient
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
问题是脚本需要发布到该网址并获取json数据。但是,由于控制器没有任何视图,当我在客户端查看控制台时,它表示URL为404错误,并且它表示XMLHttpRequest无法加载http://dev.irp.com/irp.Ajax.Search/home/Foo。 Access-Control-Allow-Origin不允许原产地http://web-dev.irps.com。
我不知道问题是否与ajax请求的url的绝对路径有关。如果是这样,我怎么能克服这一点?
我假设“foo”是一个错字(http://dev.irp.com/irp.Ajax.Search/home/foo)而不是Foo。如果是这样,请改变它以消除任何混淆。 – 2012-02-07 17:16:32
@rontornambe我做了一些修改。请检查一下。 – Krishh 2012-02-07 17:24:29