首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Rebol3中通过POST读取大量CGI数据?

如何在Rebol3中通过POST读取大量CGI数据?
EN

Stack Overflow用户
提问于 2014-09-18 06:41:05
回答 2查看 137关注 0票数 3

我正在尝试用POST上传一张图片。然后在服务器上获取POST数据,我使用:

代码语言:javascript
复制
data: read system/ports/input

...but似乎数据被截断了。

似乎没有数据被截断的特定边界。我上传的图像大小在cca 15-200kB之间,结果得到的数据是几百到几十个kB长的,所以没有像32'000字节这样的人工边界。

有没有人有从POST获取数据的经验?

EN

回答 2

Stack Overflow用户

发布于 2014-09-18 06:42:10

system/ports/input上的read操作在较低级别上工作,就像流一样。连续读取将返回部分数据,直到输入结束。问题是system/ports/input将在输入的末尾返回一个错误,而不是none!或空字符串。

下面的代码适用于我读取大量的POST输入:

代码语言:javascript
复制
image: make binary! 200'000
while [
    not error? try [data: read system/ports/input]
][
        append image data
]
票数 4
EN

Stack Overflow用户

发布于 2014-09-18 20:03:41

我使用r3-64-view-2014-02-14-1926d8.exe

代码语言:javascript
复制
while [
    all [
       not error? try [data: read system/ports/input]
       0 < probe length? data
    ]
][
    append image data
]
print length? image

并做到了

代码语言:javascript
复制
D:\own\Rebol>r3-64-view-2014-02-14-1926d8.exe read-img.r < r3-64-view-2014-02-14-1926d8.exe > err.txt

并得到了

代码语言:javascript
复制
.
.
16384
16384
16384
2048
0
1181696
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25901493

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档