Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
浏览器无法识别Java中home brew服务器发送的图像_Java_Image_Browser_Http Headers_Server Side - Fatal编程技术网

浏览器无法识别Java中home brew服务器发送的图像

浏览器无法识别Java中home brew服务器发送的图像,java,image,browser,http-headers,server-side,Java,Image,Browser,Http Headers,Server Side,编写了一个服务器,该服务器可以动态提供页面,也可以在服务器启动时将静态页面加载到页面数组中。服务器可以很好地提供页面,因此交付工作正常 当使用放入img标记的src属性中的随机名称请求页面时,从放入图像数组的数据库中提取图像,当使用随机名称请求页面时,从图像数组中提供图像。然后将它们从映像阵列中取出,以便作为安全功能只访问一次。图像正在进入和离开图像阵列,图像正在进入浏览器。浏览器(Firefox)会显示这样的消息:“图像无法显示,因为它包含错误。”此外,输出流正在刷新,因此我认为这与此无关 在

编写了一个服务器,该服务器可以动态提供页面,也可以在服务器启动时将静态页面加载到页面数组中。服务器可以很好地提供页面,因此交付工作正常

当使用放入img标记的src属性中的随机名称请求页面时,从放入图像数组的数据库中提取图像,当使用随机名称请求页面时,从图像数组中提供图像。然后将它们从映像阵列中取出,以便作为安全功能只访问一次。图像正在进入和离开图像阵列,图像正在进入浏览器。浏览器(Firefox)会显示这样的消息:“图像无法显示,因为它包含错误。”此外,输出流正在刷新,因此我认为这与此无关

在将标题放入图像数组之前,将对标题进行编码,使其看起来像以下(\n)所插入的那样,以提高清晰度:

    HTTP/1.1 200 OK
    Content-Length: 18803
    Content-Encoding: base64
    Content-Type: image/png;"/2033.png"(\n\n)
剩下的将是以字节为单位的图像。它以字节的形式发送到浏览器,发送方式与当前发送页面的方式相同。我已经尝试了以上几行不同值的多种变体,等等


你知道我做错了什么吗?

好的。。结果是我使用\r\n的顺序错误

这就是我所拥有的:

final private String newLine = "\n\r";
这就是我本应拥有的:

final private String newLine = "\r\n";

这在错误的地方造成了额外的空间,html页面可以原谅,但图像没有。希望这对其他人有所帮助。

要更快地获得更好的帮助,请发布一篇文章。