在android中上传到服务器时获取java.lang.IllegalArgumentException

时间:2013-04-30 13:07:25

标签: android json

04-30 18:33:23.036: E/AndroidRuntime(22231): java.lang.IllegalArgumentException: Illegal character in query at index 54: http://www.slicapp.com/slic/edit_profile.php?message=[{&email1=prabhjotkaur3@hotmail.com&email2=bgf&email3=hg&facebook=ggf&twitter=&gplus=&youtube=&linkedin=&instagram=&tumblr=ggf&udid1251935507&fbuid1251935507&fbid& fbpw}]
04-30 18:33:23.036: E/AndroidRuntime(22231):    at java.net.URI.create(URI.java:970)
04-30 18:33:23.036: E/AndroidRuntime(22231):    at org.apache.http.client.methods.HttpPost.<init>(HttpPost.java:79)

1 个答案:

答案 0 :(得分:2)

您的查询中有一个空格& abd fbpw ..

http://www.slicapp.com/slic/edit_profile.php?message=[{&email1=prabhjotkaur3@hotmail.com&email2=bgf&email3=hg&facebook=ggf&twitter=&gplus=&youtube=&linkedin=&instagram=&tumblr=ggf&udid1251935507&fbuid1251935507&fbid& fbpw}]
                                                                                                                                                                                                                        ^

另请注意,在this回答中,括号[]可能需要进行百分比转义(您拥有的第一个是抱怨的索引)。引用:

  

&#39; [&#39;和&#39;]&#39;字符是字符,应该是   如果未在特定方案中用作分隔符,则转义百分比   句法。规范说:

     
    

&#34; URI生成应用程序应对数据八位字节进行百分比编码     除非这些字符对应于保留集中的字符     URI方案特别允许表示其中的数据     。组分&#34;