我有一个用c#编写的web服务,由Windows手机客户使用并正常工作。
所以我开发了一个html5 / jquery来使用相同的asmx服务和Works!
当我尝试从远程计算机(页面和服务的主机除外)访问此html页面时,它失败了。
此方案有任何特殊配置吗?
唯一的区别是,从ajax调用地址中的localhost更改为webservice到主机的固定ip,同样我发布到手机设备。
这是代码
$.ajax({
url: "http://localhost:8000/services/webservice.asmx/RetornaPedidoPorMesa",
type: "POST",
dataType: "text",
data: { NumeroMesa: parseInt(querystring("numeroMesa")),
CodigoSeguranca: parseInt(querystring("codigo")) },
success: function (response) {
var xml = $(response);
if (xml.find("Retorno").text() != "") {
var list = $("#pedido").find('ul');
$("#ulPedido li").remove();
list.append("<li>Voçê não tem permissão para acessar o pedido</li>");
} else {
if (xml.find("Total") != "") {
var list = $("#pedido").find('ul');
$("#ulPedido li").remove();
list.append("<li>" + "Mesa " + querystring("numeroMesa") + " - " + "R$ " + xml.find("Total").first().text() + "</li>");
}
if (xml.find("Items") != "") {
if (xml.find("RetornoItems") != "") {
var list = $("#produtos").find('ul');
$("#ulProdutos li").remove();
$(xml.find("RetornoItems")).each(function myfunction() {
if (parseInt($(this).find("Quantidade").first().text()) > 0)
list.append("<li>" + $(this).find("Descricao").text() + "<div style='float:right\;margin-left:30px;margin-top:10px'>" + parseInt($(this).find("Quantidade").first().text()) + " x R$ " + $(this).find("ValorUnitario").first().text() + " = R$ " + $(this).find("Total").first().text() + "</div></li>");
});
}
}
}
},
error: function (response) {
alert("erro de acesso ao serviço.");
}
});
有任何帮助吗?提前谢谢......