http:// localhost:57501 / api / addDatabase上的Web服务具有以下代码。 [System.Web.Mvc.HttpPost]
public ActionResult Post(addDatabase pNuevaConeccion)
{
pNuevaConeccion.insertarMetaData();
return null;
}Ajax函数位于javascript上,该javascript根据http:// localhost:1161 / CreateServer上的给定值创建JSON 。$(document).ready(function(){$("#createServer").click(function (e) {
e.preventDefault(); //Prevent the normal submission action
var frm = $("#CreateServerID");
var dataa = JSON.stringify(frm.serializeJSON());
console.log(dataa);
$.ajax({
type: 'POST',
url: 'http://localhost:57501/api/addDatabase/',
contentType: 'application/json; charset=utf-8',
crossDomain: true,
//ContentLength: dataa.length,
data: dataa,
datatype: 'json',
error: function (response)
{
alert(response.responseText);
},
success: function (response)
{
alert(response);
if (response == "Database successfully connected") {
var pagina = "/CreateServer"
location.href = pagina }
}
});});}); 当我运行此代码时会弹出一个提示“未定义”但如果我删除了contentType,则警报不会显示。问题是函数Post(来自Web服务)接收的变量是NULL,即使我知道名为dataa的JSON不是NULL,因为我做了一个console.log。我看过各种各样的例子,几乎所有的例子都说我应该使用相对URL,但问题是因为有2个不同的域,当我尝试它时,它找不到URL,因为它不在同一个localhost中。
3 回答
慕的地6264312
TA贡献1817条经验 获得超6个赞
尝试使用此代码调用Web方法
$.ajax({ method: "POST", contentType: "application/json; charset=utf-8", data: dataa, url: 'http://localhost:57501/api/addDatabase/', success: function (data) { console.log(data); }, error: function (error) { console.log(error); }});
添加回答
举报
0/150
提交
取消