发送JSON对象到.net webservice时出现内部服务器错误
Internal Server Error when sending JSON object to .NET webservice
我在向。net web服务提交一个复杂的JSON对象时遇到了问题。
Ajax JavaScript代码:$.ajax({
type: "POST",
url: WEBSERVICE_ADMINISTRATIO_URL + "RecieveData",
data: JSON.stringify({data: _data}), // _data is the Javascipt object {}
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
alert(data);
},
failure: function (errMsg) {
alert(errMsg);
},
error: function (jqXHR, textStatus, errorThrow) {
alert(textStatus);
}
});
.NET webservice
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string RecieveData(string data)
{
return "";
}
我得到一个内部服务器错误500当试图从客户端提交数据到webservice。
我有其他的webservice函数,只是返回数据,他们工作得很好。我在web.config中赋予了GET和POST权限。
下面是详细的错误:
"{"Message":"No parameterless constructor defined for type of
'u0027System.String'u0027.","StackTrace":" at
system.Web.Script.Serialization.ObjectConverter.ConvertDictionaryToObject(IDictionary`2 dictionary, Type type, JavaScriptSerializer serializer, Boolean throwOnError, Object'u0026 convertedObject)'r'n at
System.Web.Script.Serialization.ObjectConverter.ConvertObjectToTypeInternal(Object o, Type type, JavaScriptSerializer serializer, Boolean throwOnError, Object'u0026 convertedObject)'r'n at
System.Web.Script.Serialization.ObjectConverter.ConvertObjectToTypeMain(Object o, Type type, JavaScriptSerializer serializer, Boolean throwOnError, Object'u0026 convertedObject)'r'n at System.Web.Script.Serialization.ObjectConverter.ConvertObjectToType(Object o, Type type, JavaScriptSerializer serializer)'r'n at System.Web.Script.Services.WebServiceMethodData.StrongTypeParameters(IDictionary`2 rawParams)'r'n at System.Web.Script.Services.WebServiceMethodData.CallMethodFromRawParams(Object target, IDictionary`2 parameters)'r'n at System.Web.Script.Services.RestHandler.InvokeMethod(HttpContext context, WebServiceMethodData methodData, IDictionary`2 rawParams)'r'n at System.Web.Script.Services.RestHandler.ExecuteWebServiceCall(HttpContext context, WebServiceMethodData methodData)","ExceptionType":"System.MissingMethodException"}"
谢谢。
感谢大家的支持。我可以通过将参数数据类型从string更改为Object来解决这个问题。
public string RecieveData(Object data)
{
return "";
}
相关文章:
- SignalR:调用集线器方法时出现内部服务器错误
- 如何解决“;错误所请求的URL返回500-内部服务器错误”;
- 使用javascript API响应内部服务器错误将曲目上传到SoundCloud
- AJAX错误状态代码500内部服务器错误
- Jcrop&画布:裁剪区域的大小很奇怪;500内部服务器错误
- 如果JS会话变量为null,如何避免500内部服务器错误
- POST encodeURI查询字符串内部服务器错误 500
- getJSON:网络错误:500 内部服务器错误
- Node.js:Mongoose内部服务器错误
- 缺少用于创建的模板.内部服务器错误-聚合物表单保存到数据库
- Jquery AJAX Post:500(内部服务器错误)
- CSS和Javascript可以在内部服务器上工作,但不能在外部工作
- 我的联系表格在测试/PHPMailer后给了我一个内部服务器错误(500)
- 500(内部服务器错误)的外部php文件
- 内部服务器错误在 post 请求中使用 Angular js 中的自定义服务
- 内部服务器错误:将 JavaScript 对象传递给 C#
- 为什么我的 rails AJAX 请求会抛出内部服务器错误
- 500 asp.net 内部服务器错误
- 500 内部服务器错误:无法更新猫鼬中的用户
- 在尝试将插入值从javascript调用到Visual Studio中的sql服务器时,收到内部服务器错误500