0
我正在使用Java並嘗試使用連接字符串形成一個URL。然後這將作爲POST的URI傳遞給HttpPost。如何將一個String類型的變量傳遞給HttpPost?
此代碼失敗:
String str1 = "http://www.example.com";
String str2 = "/directory";
HttpPost httppost = new HttpPost(str1 + str2);
這也將失敗:
HttpPost httppost = new HttpPost(str1.concat(str2));
至於做這個的:
String strCombined = str1 + str2;
HttpPost httppost = new HttpPost(strCombined);
然而,這工作:
HttpPost httppost = new HttpPost("http://www.example.com/directory");
我錯過了什麼?
編輯:堆棧跟蹤:
05-31 01:43:29.973: W/System.err(451): java.net.UnknownHostException: http
05-31 01:43:29.983: W/System.err(451): at java.net.InetAddress.lookupHostByName(InetAddress.java:513)
05-31 01:43:29.993: W/System.err(451): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:278)
05-31 01:43:29.993: W/System.err(451): at java.net.InetAddress.getAllByName(InetAddress.java:242)
05-31 01:43:30.003: W/System.err(451): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:136)
05-31 01:43:30.013: W/System.err(451): at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
05-31 01:43:30.013: W/System.err(451): at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
05-31 01:43:30.024: W/System.err(451): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:348)
05-31 01:43:30.033: W/System.err(451): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
05-31 01:43:30.043: W/System.err(451): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
05-31 01:43:30.043: W/System.err(451): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
「失敗」是非描述性的。他們都以同樣的方式「失敗」嗎?你可以發佈失敗(例外)是什麼? – billjamesdev
您錯過了可幫助我們診斷問題的其他信息 - 傳遞給ctor的字符串值在所有情況下都是相同的。 –
不知道我錯過了什麼,這可能是我遇到的問題。字符串值_should_在每種情況下都是相同的 - 但它不是那種方式。 – rockorager