start的默认值写成 totalSize - end 好像并不对吧
如果totalsize = 300 字节, 然后end 通过模式匹配可以得到 100 ,但是start不写,比如 range: -100 这时候start按照默认值算法将得到 300 - 100 = 200 。这样很显然就会得到 start > end 。然后就会把所有的300字节都返回。
但是如果end = 200, 那么 start = 300 - 200 = 100 这样就会得到100-200之间的字节。这样并不合理呀。