真的很简单,所以我想。

Java代码

import java.io.IOException;
import java.io.OutputStreamWriter;
import java.net.URL;
import java.net.URLConnection;

public class UrlConnectionTest {

    private static final String TEST_URL = "http://localhost:3000/test/hitme";

    public static void main(String[] args) throws IOException  {

        URLConnection urlCon = null;
        URL url = null;
        OutputStreamWriter osw = null;

        try {
            url = new URL(TEST_URL);
            urlCon = url.openConnection();
            urlCon.setDoOutput(true);
            urlCon.setRequestProperty("Content-Type", "text/plain");
            osw = new OutputStreamWriter(urlCon.getOutputStream());
            osw.write("HELLO WORLD");

        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (osw != null) {
                osw.close();
            }
        }

    }

}


TestController#hitme

def hitme
  puts "SOMEONE IS HITTING ME!" * 100
  puts request.env.inspect
end


运行Java代码时,在Rails Server控制台中什么也看不到。但是,当我在浏览器中单击URL时,将得到TestController#hitme中指定的输出。我以为这很简单,但是还没有运气。有任何想法吗?

提前致谢!

最佳答案

您可能会遇到一个未见的异常,因为您正在吞下它。至少在catch块中打印异常。

即使这不是问题,但如果您养成吞咽错误的习惯,也会经常追尾。



我不认为您实际上是在发送任何数据,直到您致电

urlCon.getInputStream();

10-04 12:01