我想创建这样的 HttpPost 请求:
http://site/searches.json -d"search[params_attributes[origin_name]=MOW"\ -d"search[params_attributes][destination_name]=IEV"\ -d"search[params_attributes[some]=SOME"
我用手试了一下——效果很好。但我有错误:
Caused by: java.lang.IllegalArgumentException: Illegal character in path at index 43: http://somesite/searches.json -d"search[params_attributes][origin_name]=KBP"...
at java.net.URI.create(URI.java:776)
at org.apache.http.client.methods.HttpPost.<init>(HttpPost.java:79)
它说错误在第一个空间位置。有任何想法吗?
编辑:
我试过了:
mMethodURI = URLEncoder.encode(mMethodURI, "UTF-8");
并得到:
Caused by: java.lang.IllegalStateException: Target host must not be null, or set in parameters.
at org.apache.http.impl.client.DefaultRequestDirector.determineRoute(DefaultRequestDirector.java:572)
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:292)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)