我托管了一个由jQuery ajax从 ASP.NET 1.1 调用的Web服务。
以下是我用来调用网络服务的代码:
function OnTrimLevelChange()
{
var $jDecode = jQuery.noConflict();
var vin = $jDecode("input[id*=txtVIN]").val();
var styleId = '';
var paramList = '{"vin": "' + vin + '","styleID": "' + styleId + '"}';
try
{
$jDecode.ajax({
type: 'POST',
contentType: 'application/json; charset=utf-8',
url: 'http://192.168.10.10/VINDecoder/service.asmx/CallADSWebMethod',
data: paramList,
dataType: 'json',
success: function(data) {
alert('I am here');
},
error: function(xml,textStatus,errorThrown) {
alert(xml.status + "||" + xml.responseText);
}
});
}
catch(er)
{
}
}
=============================================== ========
上面的 总是会转到错误部分
错误:
xml.status = 0
xml.responseText = null
Web方法代码是:
[WebMethod]
public VINDescription CallADSWebMethod(string vin, string styleID)
{
VehicleDescription vehicleDescription = FetchVehicleInfo(vin, true, styleID);
VINDescription vinDescription = new VINDescription();
try
{
if (vehicleDescription != null)
{
//Check if the response status of the call is successful or not.
if (vehicleDescription.responseStatus.description.Equals("Successful"))
{
vinDescription = AddToVINDescription(vehicleDescription);
}
}
}
catch (NullReferenceException ex)
{
}
return vinDescription;
}
注意:web服务是在.Net 4.0中创建的,我调用的站点是1.1。 它们托管在不同的服务器中。
让我知道我在这里缺少什么,或者我在做什么错误。
答案 0 :(得分:0)
需要在Web服务中启用脚本服务执行。像这样:
[ScriptService]