我目前正在编写一个基本的http服务器。如果协议版本为1.1并且没有主机线,则所需功能之一是显示400错误。
我有以下扫描程序(行是保存请求文件的数组)
Scanner scn = new Scanner(lines[0]);
String command = scn.next();
String fileName = scn.next();
String protocol = scn.next();
Scanner scn2 = new Scanner(lines[1]);
String host = scn2.next();
String hostline = scn2.next();
然后我有以下if语句,它应该检查hostline是否为空
if ( protocol.equals("HTTP/1.1") && hostline.isEmpty() ) {
String reply="HTTP/1.0 400 Bad Request\r\n" +
"Connection: close\r\n" +
"Content-Type: " + contentType + "\r\n" +
datestr +
"<h1>HTTP/1.0 400 Bad Request</h1>\r\n";
outs.write(reply.getBytes()); }
当我运行它并测试它时,我在这一行得到NoSuchElementException:
String hostline = scn2.next();