如何将数据发送到asp.net ashx处理程序?例如,如果我想将一些xml发送到asp.net hanlder怎么可能呢?
答案 0 :(得分:1)
AFAIK,处理程序处理HTTP请求,因此他们可以访问HttpContext。因此,您可以像“myhandler.ashx?parameter = value”一样调用处理程序,然后使用HttpContext.Request.QueryString(context.Request.QueryString [“parameter”])来查找值。
同样,您可以将数据POST到处理程序,将XML添加为POST变量,然后使用context.Request.Form [“myXmlData”]
您可以从任何html页面调用处理程序:
<body>
<form method="POST" action="MyHandler.ashx">
Paste your XML in this textarea:
<textarea name="MyXmlData" id="MyXmlData" cols="80" rows="10"></textarea><br />
<button type="submit" value="Call Handler"></button>
</form>
</body>
答案 1 :(得分:1)
不是使用HttpHandler,而是使用Web服务或WCF服务。但是,如果您愿意,可以将某些内容发布到处理程序并捕获它,如下所示:
public void ProcessRequest (HttpContext context) {
var xml = context.Request.Form["data"];
}
用于POST数据。对于GET数据,您可以使用:
public void ProcessRequest (HttpContext context) {
var xml = context.Request.QueryString["data"];
}
或者简单地说:
public void ProcessRequest (HttpContext context) {
var xml = context.Request["data"];
}
将在内部循环获取数据的可能方式。