【问题标题】:Accessing the exact data sent using WebClient.UploadData on the server访问在服务器上使用 WebClient.UploadData 发送的确切数据
【发布时间】:2010-07-16 16:40:15
【问题描述】:

新手问题:我正在使用 WebClient.UploadData 方法将字节数组形式的大文本字符串发送到网站,但我不确定从服务器上的确切位置检索该数据。我读过帖子说它在我已经知道的请求对象中,但是我该如何检索我发送的特定字节数组,就像下面的 c# 伪代码一样:

byte[] dataSent = request.GettheByteArrayISentFromWebClientUploadDataMethod;

我知道它可能没有这么简单,我可能需要做一些其他的处理,但是任何人都可以发布一个代码 sn-p 来显示我如何获得发送的字节数组吗?

谢谢你

【问题讨论】:

    标签: asp.net http request webclient


    【解决方案1】:

    尝试从请求流Request.InputStream中读取它:

    var bytes = new byte[request.InputStream.Length];
    Request.InputStream.Read(bytes, 0, bytes.Length);
    

    如果您要发送键/值对,那么您可以使用UploadValues 方法并将它们作为请求参数简单地读取:

    string value = Request["someKey"];
    

    【讨论】:

    • 感谢您的回复。它起作用了,但它引发了其他几个问题:使用此方法可以传递的数据量是否有限制,是否存在将任何其他数据添加到 InputStream 的危险,因为它进入服务器?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-11
    • 1970-01-01
    • 2017-03-05
    • 1970-01-01
    • 1970-01-01
    • 2013-09-19
    • 2019-12-29
    相关资源
    最近更新 更多