我试图在AsyncTask
中向我的服务器发送一些参数,但没有任何运气。
这是我的代码:
try {
Uri.Builder builder = new Uri.Builder();
builder.scheme("https")
.authority("www.dummyurl.com/android/agent.php")
.appendQueryParameter("date", selectedDate.getText().toString()+" "+ selectedTime.getText().toString())
.appendQueryParameter("user", userTxt.getText().toString())
.appendQueryParameter("cal", calTxt.getText().toString());
String myUrl = builder.build().toString();
System.out.println(myUrl);
URL url = new URL(myUrl);
URLConnection urlConnection = url.openConnection();
InputStream in = urlConnection.getInputStream();
} catch (Exception e) {
e.printStackTrace();
}
myUrl
看起来像是:https://www.dummyurl.com%2Fandroid%2Fagent.php?date=February-6-2015%2014%3A49&user=qwe&cal=qweqwe
但我收到以下错误:
java.net.UnknownHostException: host == null
据我所知,由于某种原因,我无法连接到转义的网址,我知道我搞砸了,但作为一个Android初学者,我真的找不到向我的网址发出请求的方法。我知道我在这里错过了一小部分,但我现在无法发现它。
答案 0 :(得分:2)
使用Uri.Builder.appendPath
将主机名和路径添加到uri:
Uri.Builder builder = new Uri.Builder();
builder.scheme("https")
.authority("www.dummyurl.com")
.appendPath("android")
.appendPath("agent.php")
....