ashx 获取上传的文件_使用jQuery Post从.ashx获取文件

这个问题来自我提出的另一个问题 - Passing client data to server to create Excel or CSV File。

我有一个客户端页面,它建立一个JSON对象发送到服务器,我有服务器代码,可以将该JSON对象解析为一个SQL命令,并最终获得所需数据的数据集。

我最初将JSON对象传递给.asmx Web服务,该服务将返回包含我的数据的JSON对象。现在我想进入另一个方向,并将数据作为.csv文件返回。

我知道我可以尝试将我的JSON对象放到查询字符串中并调用我的.ashx页面,但JSON对象可能变大,所以我试图使用POST的Request.Form。

我的问题和缺乏理解是,如何使用jQuery发布到.ashx页面并让它将.csv文件返回给客户端。如果我直接导​​航到.ashx页面(并修改页面以硬编码传递的数据),我就会得到返回给我的.csv文件没问题(即,我得到提示以打开/保存文件)。如果我从jQuery向.ashx文件发布POST并发送我的JSON对象,我会得到一个包含字符串数据的响应,而不是获取.csv。

那么,有没有我缺少的东西,或者我只是试图实现我不能或不应该做的事情?

我曾考虑将我的JSON对象传递给.asmx Web服务,该服务会将JSON对象存储到数据库中并返回一个ID,然后使用window.location以ID作为查询字符串参数浏览到.ashx。然后生成.csv文件,但我认为可能有一种方法可以避免中间步骤,并使用POST来完成。

对不起,如果这是一个有点散漫和脱节。我很乐意澄清对任何人都没有意义的任何部分。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值