CNode

对于链接只取前1k,谁能提供下代码或思路

Ooluul发布于13 年前最后回复13 年前15 回复5681 浏览0 收藏

guoqi

查看回复

回复 (15)

L
leapon#1·13 年前

看看 HEAD 命令里有没有你要的。不然就得取 GET body 部分了。

O
oluul#2·13 年前
引用 leapon看看 HEAD 命令里有没有你要的。不然就得取 GET body 部分了。

http.get('http://www.taobao.com',function(res){ res.once('data',function(d){ console.log(d); }) })

突然想到这个。只订阅一次data事件。

L
leapon#3·13 年前
引用 leapon看看 HEAD 命令里有没有你要的。不然就得取 GET body 部分了。

@oluul 你取一次data,后续的data还会进来吧。http body request 好像停不下来。

O
oluul#4·13 年前
引用 leapon看看 HEAD 命令里有没有你要的。不然就得取 GET body 部分了。

@leapon 是的,后续的data确实是个问题,能不能停止这个链接呢?

L
leapon#5·13 年前
引用 leapon看看 HEAD 命令里有没有你要的。不然就得取 GET body 部分了。

@oluul 我遇到过类似的情况。文件上传想中断但是停不下来。服务器端可能有底层的TCP命令也许可以切断连接。希望有大牛知道怎么做。

O
oluul#6·13 年前
O
oluul#7·13 年前
L
leapon#9·13 年前
引用 leapon看看 HEAD 命令里有没有你要的。不然就得取 GET body 部分了。

@oluul

这能解决预定长度上传的问题。中断传输中的连接有好办法吗? 我也再翻一边TCP/IP的手册找找。

O
oluul#10·13 年前
引用 leapon看看 HEAD 命令里有没有你要的。不然就得取 GET body 部分了。

@leapon 不好意思。range不能解决上面的问题,我试过了。还没找到找到解决方法,这周去读了下“了不起的Node.js” 还没发现解决方法。不过这本书不错。range/content-range需要服务器的支持才可以。

X
xiuxu123#11·13 年前

直接截取链接的长度不行吗?

O
oluul#12·13 年前
引用 xiuxu123直接截取链接的长度不行吗?

再详细些。没看懂。

X
xiuxu123#13·13 年前
引用 xiuxu123直接截取链接的长度不行吗?

@oluul

var url = req.url.length>1024?req.url.substring(0, 1024):req.url;

这样不行吗?

A
aaronzhou#14·13 年前

我觉得大家理解错了吧,楼主是想url请求只能被请求1000次,1000次以后的请求就不处理了,或者返回错误之类的。是否这样的?

O
oluul#15·13 年前

@leapon 理解的对,@xiuxu123 好像没理解。我的标题写的太难懂了,容易想歪。我的想法是想做到拿到部分响应内容,而不是全部响应内容

参与回复
登录后即可参与回复。登录