从Java发送HTTP请求到C#

时间:2013-03-22 13:27:35

标签: c# java http request

我在C#中使用HttpListener来获取HTTP请求。我需要使用Java发送请求。我尝试使用HttpURLConnectionDataOutputStream发送请求,但C#代码未收到任何请求。

我认为问题出在Java上,因为我在C#中创建了一个小型测试应用程序,它使用HttpWebRequest对象发送请求,一切正常。

什么可能导致这个问题?

这是我的C#代码片段:

        Listener = new HttpListener();
        Listener.Start();
        Listener.Prefixes.Add(string.Format("http://{0}:{1}/", "127.0.0.1", "14141"));
        HttpListenerContext context = Listener.GetContext();

这是我的Java代码片段:

     String message = "test message";
     URL url = new URL("http://127.0.0.1:14141/");

     HttpURLConnection connection = (HttpURLConnection)url.openConnection(); 

     connection.setDoOutput(true);
     connection.setDoInput(true);
     connection.setInstanceFollowRedirects(false); 
     connection.setRequestMethod("POST"); 
     connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); 
     connection.setRequestProperty("charset", "utf-8");
     connection.setRequestProperty("Content-Length", "" + Integer.toString(message.getBytes().length));
     connection.setUseCaches (false);

     DataOutputStream wr = new DataOutputStream(connection.getOutputStream ());
     wr.writeBytes(message);

     writer = new OutputStreamWriter(connection.getOutputStream());
     writer.write(message);

0 个答案:

没有答案