http客户端 - >发送的消息包括&符号

时间:2010-08-09 13:27:15

标签: java http

也许有人可以帮助我......

我写了一个非常简单的java http客户端,它将xml作为发布数据发送到网络服务器。现在奇怪的是,我们的客户报告说,在postdata中有一个尾随的&符号。我完全不知道如果你看一下源代码,我删除了每个变量......

public static void main(String[] args) {
    try {
    final URL httpURL = new URL(args[0]);

    String request = "<root/>";

    HttpURLConnection connection = (HttpURLConnection)httpURL.openConnection();
    connection.setRequestMethod("POST");
    connection.setDoOutput(true);

    OutputStream os = connection.getOutputStream();
    os.write(request.getBytes());
    os.close();

    BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
    String tmp;
    String xml = new String();
    while ((tmp = in.readLine()) != null) {
        xml = xml.concat(tmp);
    }
    connection.getInputStream().close();
    connection.disconnect();
    System.out.println("Result: " + xml);
    } catch (Exception e) {
        System.err.println("Exception ocurred " + e);
    }
}

正如您所看到的,当前我们发送一个固定的“xml”,它只是一个标签。

有没有人知道是否存在已知错误或情况,会发生类似情况?

我感谢每一个帮助:)。谢谢!

1 个答案:

答案 0 :(得分:1)

我在代码中看不到任何会导致&符号被发送到服务器的问题。我怀疑问题可能在服务器端。

尝试使用wireshark或类似的东西捕获发送到服务器的TCP数据包,看看是否可以看到那里的流浪角色。