如何使用字符串JSON响应压缩ASMX数据(C#Web服务)

时间:2013-09-10 10:56:27

标签: c# android asp.net json web-services

我一个接一个地从 Android应用程序调用我的web服务。在每次通话时,它都会返回几乎 3.5KB 的数据。

我正在使用 JavascriptSerializer 类来序列化并转换为JSON字符串my Dictionary<string,string>Dictionary<string,string>[]对象。 (特别是Dictionary<string,string>[]

有没有办法减少这些数据量。它真是太棒了。或者我做错了什么?

谢谢..

1 个答案:

答案 0 :(得分:-1)

通过浏览器中的HTML元素加载的脚本文件只能通过HTTP GET动词请求进行检索。

默认情况下,ASP.NET AJAX的Web服务层不允许通过HTTP GET谓词调用Web方法。例如,假设开发人员编写如下所示的Web服务方法:

[WebMethod]
public StockQuote[] GetQuotes(string symbol) {

}

ASP.NET只允许通过HTTP POST动词调用上面的GetQuotes方法,并且将拒绝所有通过HTTP GET动词调用该方法的尝试。

要通过HTTP GET访问使ASP.NET AJAX Web方法可调用,开发人员必须使用ASP.NET的ScriptMethod属性显式地定义每个方法(并将UseHttpGet属性设置为true):

[WebMethod] 
[ScriptMethod(UseHttpGet=true)] 

public StockQuote[] GetQuotes(string symbol) { 

} 

了解更多信息,请参阅以下链接

http://weblogs.asp.net/scottgu/archive/2007/04/04/json-hijacking-and-how-asp-net-ajax-1-0-mitigates-these-attacks.aspx