我正试图通过指向我的MVC5控制器的jQuery ajax调用从Web服务中获取JSON。当我在Visual Studio(2013)中本地运行它时它工作正常,但每当我将它部署到服务器时我都会收到错误。 Web服务是基于云的服务。
我无法弄清楚这个问题?
当我尝试从JS中的失败函数中获取错误时,我只是得到“错误”,“未找到”?
代码
控制器:
public string GetJson2()
{
string url = "*private*";
using (var client = new WebClient())
{
//JavaScriptSerializer jss = new JavaScriptSerializer();
string json = client.DownloadString(url);
//var tracks = jss.Deserialize<Tracks>(json);
//string output = jss.Serialize(tracks);
// TODO: do something with the model
return json;
}
}
使用Javascript:
$.getJSON("/Home/GetJson2")
.done(function (data) {
var string = "<table>";
var tbody = "";
var count = 0;
var header = "<tr>";
// On success, 'data' contains a list of documents.
$.each(data, function () {
tbody += "<tr>";
$.each(this, function (k, v) {
if (count == 0) { header += "<th>" + k + "</th>"; }
tbody += "<td>" + v + "</td>";
});
tbody += "</tr>";
count += 1;
});
header += "</tr>";
var table = string + header + tbody;
table += "</table>";
$("#results").html(table);
})
.fail(function (x, y, z) { alert(x); alert(y); alert(z); });
如果我需要提供其他任何东西,请告诉我!
谢谢!
更新
这似乎是一个MVC问题,而不是Web服务问题,因为当我直接导航到浏览器中的上述控制器时,我得到一个404页面,所以看起来我没有正确配置?我可以再次直接在localhost中导航,而不是在服务器上导航。
更新2
我解决了路由问题,当我尝试从Web服务获取数据时,我现在收到500错误。再次......在当地工作得很好。我现在正在黑暗中拍摄。