C# WCF服务,下载带有参数的文件,根据GET请求发送数据

C# WCF服务,下载带有参数的文件,根据GET请求发送数据,c#,jquery,.net,wcf,C#,Jquery,.net,Wcf,jQuery支持通过GET请求发送数据: jQuery.get( url [, data ] [, success(data, textStatus, jqXHR) ] [, dataType ] ) 是否可以编写支持在GET请求上接收数据的WCF服务 一个例子是非常值得赞赏的 更新:Url长度超过IE8的限制,IE8是一项要求。我需要传递很多参数,基本上是一个大的JSON。为了解决这个问题,我做了一个POST请求,将参数存储在服务器端,然后将window.location设置为服务位置,调用

jQuery支持通过
GET
请求发送数据:

jQuery.get( url [, data ] [, success(data, textStatus, jqXHR) ] [, dataType ] )
是否可以编写支持在
GET
请求上接收数据的WCF服务

一个例子是非常值得赞赏的

更新:Url长度超过IE8的限制,IE8是一项要求。我需要传递很多参数,基本上是一个大的JSON。为了解决这个问题,我做了一个
POST
请求,将参数存储在服务器端,然后将
window.location
设置为服务位置,调用一个
GET
请求来下载我的文件。但是,我想避免
POST
请求并将文件存储在服务器端,因为我在分布式系统中,在这方面我有很多问题。

请确保:

[OperationContract]
[WebInvoke(
    Method = "GET",
    UriTemplate = "SomeUrl?param1={param1}&param2={param2}"
)]
string SomeOperation(string param1, string param2);
然后:

$.get('SomeService.svc/SomeUrl?param1=SomeValue&param2=AnotherValue', function(response) {
    console.log(response);
});
或:


这是可能的。此处链接了解更多信息-


但是REST服务更适合AJAX和JS调用。在进行新服务时,您可以使用ASP.NET Web API。关于它的许多教程

请查看REST WCF服务或WebAPI。我认为这可能会有所帮助。我不能使用REST,也不能使用WebAPI,现在不能更改实现,但很高兴知道将来会发生什么。@变种人:我还不清楚如何读取服务器端的数据参数的大小有限制吗?这是MEI问题的根源。如果数据在URL中格式化,在Internet Explorer中,最大限制为2083。然而,在Firefox(80K+字符)和Safari(100K+字符)中,允许的最大长度实际上是巨大的。我敢打赌Chrome采用的是与Firefox和/或Safari相同的浏览器。(来源:)我需要在IE8上支持这一点,目前正在将window.location设置为服务url。这将调用GET请求,但我需要传递很多参数,基本上是一个巨大的JSON。为了解决这个问题,我提出了一个带有参数的POST请求,将它们存储在服务器端,然后是一个带有短url的GET请求。但是,我想避免使用POST-requestPOST发送一个巨大的JSON。为什么要避免POST请求?因为我无法保存响应POST请求时收到的文件
$.get('SomeService.svc/SomeUrl', {param1: 'SomeValue', param2: 'AnotherValue'}, function(response) {
    console.log(response);
});