1

我正在尝试使用 jQuery 调用 Web 服务,并且阅读了很多示例,但不幸的是我无法使其工作。

我正在尝试为我的练习调用此 Web 服务:http ://www.w3schools.com/webservices/tempconvert.asmx?op=CelsiusToFahrenheit

这是我下面的代码,但无论我做什么,我都会收到错误 500(内部服务器错误)或 400 错误请求。

function GetIt(){
var divToBeWorkedOn = "#AjaxPlaceHolder";
var webMethod = "http://www.w3schools.com/webservices/tempconvert.asmx/CelsiusToFahrenheit?callback=?";
var parameters = 'POST /webservices/tempconvert.asmx/CelsiusToFahrenheit HTTP/1.1 Host: www.w3schools.com Content-Type: application/x-www-form-urlencoded Content-Length: 9 Celsius=5';
//var parameters = 'Celsius=5';
//var parameters = '<Celsius>5</Celsius>';

$.ajax({
    type: "POST",
    url: webMethod,
    data: parameters,
    contentType: "text/xml; charset=utf-8",//"application/json; charset=utf-8",
    dataType: "xml", //"json"
    success: function(msg) {    
        $(divToBeWorkedOn).html(msg.d);
    },
    error: function(e){
        $(divToBeWorkedOn).html("Unavailable");              
    }
});
}

我不确定我应该如何传递参数...

任何人都可以描述问题出在哪里并使这个例子有效吗?

非常感谢。

4

1 回答 1

0

尝试这个

function GetIt(){
  var divToBeWorkedOn = "#AjaxPlaceHolder";   
  var webMethod = "http://www.w3schools.com/webservices/tempconvert.asmx/CelsiusToFahrenheit?callback=?"; 
  var parameters = {'Celsius':'5'};

  $.ajax({
    type: "POST",
    url: webMethod,
    data: parameters,
    contentType: "text/xml; charset=utf-8",//"application/json; charset=utf-8",
    dataType: "xml", //"json"
    success: function(msg) {    
      $(divToBeWorkedOn).html(msg.d);
    },
    error: function(e){
      $(divToBeWorkedOn).html("Unavailable");              
    }
  });
}
于 2013-04-19T07:19:27.763 回答