如何在ASP.Net 2.0中强制数据类型为JSON
我旋转了大约一千次然后引用parserrror后得到了以下工作:SyntaxError:Unexpected token < – 在ASP.NET MVC 4中使用jQuery Ajax加载部分视图
我在ASP.Net 2.0
项目中有以下代码。 它工作 – 但要使它工作,我使用dataType: "html"
。 当我使用JSON作为数据类型时,我得到一个解析错误: Unexpected token <
我们如何使它与JSON
?
注意:虽然我使用的是IE8,但我的一些用户仍在使用IE6。 所以我需要一个适用于IE6的解决方案。
jQuery Ajax
$.ajax({ type: "GET", url: "admPlantParametersViewEdit.aspx/GetResult", contentType: "application/json; charset=utf-8", dataType: "html", success: function(msg) { alert("Hi"); }, error: errorFunction });
VB.Net
_ Public Shared Function GetResult() As String Return "hello" End Function
请求和响应标头
参考
- jQuery ajax函数中contentType和dataType之间的差异
- AJAX请求中的content-type和datatype是什么?
- 如何从2.0 asmx Web服务返回JSON
- ASP.NET AJAX PageMethods调用.NET 4.5 IIS 7.5的整个页面
- 在Rest WCF中支持跨域请求(特别是WebInvoke中的多个方法)
- jQuery $ .ajax(),$。post在Firefox中发送“OPTIONS”作为REQUEST_METHOD
- 无法在jQuery.ajax中将content-type设置为’application / json’
在请求中你需要设置Accept:application / json,如果你的服务器有json支持,那么它会在json中自动发送响应,
type: "GET", url: "admPlantParametersViewEdit.aspx/GetResult", contentType: "application/json; charset=utf-8", Accept: application/json,
然后在响应标题中你应该看到
content-type:application/json
不是content-type:text / html
我在引用以下两篇文章后想出来了
encosia – ASP.NET Web服务错误:手动JSON序列化
encosia – ASMX ScriptService错误:安装和配置
由于您使用的是.NET 2.0,最可能的罪魁祸首是您已安装了AJAX Extensions,但尚未更新您的web.config以使用该新的处理程序来处理ASMX请求。
解决的步骤:
-
下载ASP.NET AJAX 1.0并安装它,如果还没有安装它http://www.microsoft.com/en-us/download/details.aspx?id=883
-
删除现有的httpHandler后添加适当的httpHandler,如下所示[此配置仅适用于.Net 2.0 。 参考上面提到的博客的其他版本]
-
请参阅jquery ajax与asp.net无法正常工作
如
和
0.4。 把它当作POST
和json
$.ajax({ type: "POST", url: "admPlantParametersViewEdit.aspx/GetResult", contentType: "application/json; charset=utf-8", dataType: "json", success: function(msg) { alert(msg.d); alert(msg); }, error: errorFunction });
如果不引用以下来自encosia的行,这个答案将不完整
ASP.NET AJAX Extensions v1.0最初添加的两个关键function使ASMX服务能够返回原始JSON的能力成为可能。
- JavaScriptSerializer
- ScriptHandlerFactory
好读
- Scott Gu’s – JSON劫持以及ASP.NET AJAX 1.0如何避免这些攻击
- ASP.NET AJAX版本之间的重大变化
- ajax jQuery asp.net错误意外的令牌<
- ASMX ScriptService错误:安装和配置
- 将JSON.NET与ASP.NET Web API结合使用
- jQuery,ASP.NET Web API和Json.NET走进一个吧……
- ASP.NET AJAX应用程序的部署问题