香辣鸡丁煲 2016-04-14 02:59 采纳率: 0%
浏览 2086

为什么设置了请求头为range格式,服务器返回码却是200而不是206呢?

HTTP1.1 中的状态码与状态描述中有写道
206 Partial Content 客户发送了一个带有Range头的GET请求,服务器完成了它(HTTP 1.1新)。
然后我的客户端代码:

 HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setConnectTimeout(5000);
connection.setRequestProperty("Range", "bytes-" + startIndex                        + "-" + endIndex);
Log.i("hhh", connection.getResponseCode()+"");//返回值为200

服务器部分代码:

 response.setContentType("Application/Octet-stream;charset=utf-8");
response.setHeader("Content-Disposition", "attachment;filename="
+ fName+"");
FileInputStream is = new FileInputStream(f);
OutputStream os = response.getOutputStream();
int len = 0;
byte[] bs = new byte[2048];
while((len=is.read(bs))>0)
{
os.write(bs, 0, len);
}   
response.setCharacterEncoding("UTF-8");
is.close();
os.flush();
os.close();

求解答,谢谢,谢谢

  • 写回答

1条回答 默认 最新

  • fix_bugs 2024-05-07 14:00
    关注

    响应状态码需要手动设置,具体如下:

    img

    评论

报告相同问题?

悬赏问题

  • ¥15 网络科学导论,网络控制
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)