我正在编写一个可以使用 Kannel 发送 SMS 的 Java 程序。我已经在我的 VM Vare 虚拟机 (Red Hat) 中配置了 Kannel。Kannel 工作正常,我可以通过输入网址发送短信
http://192.168.214.128:13013/cgi-bin/sendsms?
username=tester&password=foobar&to=03478847037&text=Mahtab
在我的 Windows 浏览器中。但是当我通过 Java 程序访问相同的 URL 时,我得到了这个异常
java.io.IOException: Server returned HTTP response code: 400` for URL:
http://192.168.214.128:13013/cgi-bin/sendsms?
username=tester&password=foobar&to=03478847037&text=Mahtab
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1245)
但是当我在浏览器中粘贴相同的 url 字符串时,我可以发送 SMS。
附上代码
URL url = new URL("http://192.168.214.128:13013/cgi-bin/sendsms?username=tester&password=foobar&to=03478847037&text=Mahtab");
System.out.println(param.toString());
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream());
StringBuffer answer = new StringBuffer();
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {answer.append(line);}
writer.close();
reader.close();
System.out.println(answer.toString());
现在请在这方面帮助我我缺少什么???