1
A
回答
2
的IHttpHandler
接口只实现了两件事情:
Boolean IsReusable {get;}
void ProcessRequest(HttpContext context);
因此,没有...严格意义上它并不意味着返回值。现在,您可以将response设置为您想要的样式(SOAP/XML/JSON)。所以实际上,只要HTTP能够支持它,你就可以返回任何你想要的东西,并且消费它的客户端知道如何处理它。
但是,尝试通过HttpHandler
尝试实施自己的服务是不明智的,因为有simpler and more efficient ways来完成同样的事情。
1
HttpHandler
通过其ProcessRequest(HttpContext context)
方法响应,您可以在其中修改参数context
以告知您希望作为响应发回什么内容。 context.Response.ContentType
指定响应的MIME类型,例如响应为text/html
,因此浏览器会将其呈现为html页面。或者,响应为video/mp4
浏览器将尝试打开它,并且在大多数情况下浏览器将显示下载对话框。不幸的是,在MIME类型中没有text/array
(我认为将来不会有)。但是,您可以将数组值以纯文本形式传递给特殊格式,并在客户端反序列化它。下面是一个简单的例子:
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
context.Response.Write("[1,2,3,4]");
}
,并在JavaScript客户端:
var response = GetTheResponse(); //maybe via ajax or something equivalent.
var myArray = eval(response); //myArray[0]=1,myArray[1]=2...
在实际项目中,你可能会想与复杂对象的数组,在它(不只是简单的数字) 。因此,您需要系统化的序列化/反序列化标准,例如,将您的Person
对象数组序列化为json字符串并将其写入响应,然后使用某些json utils将它们反序列化回客户端。
相关问题
- 1. 返回数组在C++中
- 2. 在Perl中返回数组
- 3. 在C中返回数组?
- 4. httphandler返回字符串变量
- 5. HttpHandler响应永远不会返回
- 6. HttpHandler返回零长度字节[]
- 7. 如何在asp.net中处理自定义HttpHandler的空返回?
- 8. 返回数组
- 9. 返回数组
- 10. 返回数组
- 11. 返回数组
- 12. 在C函数中返回char数组
- 13. 在存储函数中返回数组
- 14. 方法中的数组元素并返回数组返回值
- 15. 返回零数组在Python
- 16. Acessing在返回的数组
- 17. 返回数组中夫特
- 18. Dojo中的返回数组
- 19. 返回数组中的Java
- 20. 在chrome/node/canary中返回一个数组,返回时髦数组的属性?
- 21. 将多个参数从httphandler返回到FineUploader`OnComplete`
- 22. 在php中返回sql数组
- 23. 在数组中收集Api返回
- 24. 数组如何在Ruby中返回?
- 25. 如何pg_escape_string在数组中返回值
- 26. 如何在JNI中返回数组?
- 27. 在jquery中返回数组值
- 28. '随机'返回值不在数组中?
- 29. 如何在响应中返回数组
- 30. 在递归中返回一组数字