Jquery Ajax调用Webservice 报错500
这个是我用来调用WebService的代码。$.ajax({
type: 'POST',
url: "WebService2.asmx/HelloWorld",
contentType: "application/json:charset=utf-8",
datatype: 'json',
daa:{str:'sadsad'},
beforeSend: function (XMLhttpRequest) {
alert('loading');
},
success: function (data) {
alert($(data).find('string').text());
},
error: function (error) {
alert(error.responseText);
}
});
这个是WebService里的代码
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。
[System.Web.Script.Services.ScriptService]
public class WebService2 : System.Web.Services.WebService {
public WebService2 () {
//如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}
//[WebMethod]
//public string HelloWorld() {
// return "Hellow World";
//就是默认的WebService的代码,然后加了个参数
[WebMethod]
public string HelloWorld(string str)
{
return "Hellow World and"+str;
}
我在WebService里面单独调用是没有问题的,调用那个默认的HelloWorld也是没有问题的。但是是要加了参数,而且就算data:{}不填写他都要报错500"Internal Server Error"
实在搞不定了,请教大神们。 ASP.NET WebService Jquery Ajax --------------------编程问答-------------------- 利用IDE开发环境可以对webservice进行调试
--------------------编程问答--------------------
麻烦大神说一下吧,我没找到啊,我用的VisualStudio2012. --------------------编程问答-------------------- 我就是用调试单独打开了WebService页面,调试没问题的,但是我在Ajax里一调用就出问题了。 --------------------编程问答-------------------- 稍等,我测试一下。 --------------------编程问答-------------------- http://www.php100.com/html/webkaifa/ajax/2006/1127/2010.html --------------------编程问答-------------------- ASP.NET 2.0 AJAX中能够在客户端js中很方便地调用服务器Webservice,以下为一些调用的示例。笔者安装的ASP.NET 2.0 AJAX
版本为AJAX November CTP。
三个示例分别为:
1 带参数的WS方法
2 不带参数的WS方法
3 参数类型为DataTable的WS方法
一、WebMethod
注意要点:
1 WebMethod类需要添加命名空间 Microsoft.Web.Script.Services,此空间需要引用Microsoft.Web.Preview.dll
2 类声明加入标签 [ScriptService]
3 在Asp.net 2.0里可以直接用DataTable作为返回类型了,但是需要在Web.config文件添加序列化转换器的属性。DataSet、DataTable、DataRow均有转换器 --------------------编程问答-------------------- 我照着改了一下。
我的.Net是4.5了
这个是我调用的WebService页面
输入的参数
然后调用,结果是没问题
但是我在前端调用的时候报错了,我返回的一个error.responseText
是这个样子的
啊···本来逻辑多么简单的一个问题在我这里怎么搞出来了那么多乱子。 --------------------编程问答--------------------
大神请看看 --------------------编程问答--------------------
我又查了一下,他们说在WebConfig中添加<system.webServer>
<handlers>
<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
</handlers>
</system.webServer>就能解决,但是我加进去了还是不行。
补充:.NET技术 , Web Services