【发布时间】:2015-09-19 14:32:00
【问题描述】:
我正在尝试连接到团队中另一位开发人员为我提供的服务器。我正在使用 Volley,不过还是个初学者。
在服务器上,API 文件夹内的用户文件夹内有一个注册方法。我需要能够从我的 android 应用中调用此方法才能注册新用户。
这是我正在使用的代码。
try {
Request request = new Request(Request.Method.POST, url + "/user/register", new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(getApplicationContext(), error.getMessage(), Toast.LENGTH_LONG).show();
}
}) {
@Override
protected Response parseNetworkResponse(NetworkResponse response) {
Toast.makeText(getApplicationContext(), "ParseNetworkRequest", Toast.LENGTH_LONG).show();
return null;
}
@Override
protected void deliverResponse(Object response) {
Toast.makeText(getApplicationContext(), "DeliverResponse", Toast.LENGTH_LONG).show();
}
@Override
public int compareTo(Object another) {
return 0;
}
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<>();
// POST Parameters
params.put("api_key", API_KEY);
params.put("email", etEmail.getText().toString());
params.put("password", etPassword.getText().toString());
params.put("verifyPassword", etConfirmPass.getText().toString());
params.put("firstname", etFirstName.getText().toString());
params.put("lastname", etLastName.getText().toString());
params.put("birthday", birthDate);
return params;
}
};
Volley.newRequestQueue(this).add(request);
我遇到的错误。
com.android.volley.NoConnectionError: java.net.UnknownHostException: Unable to resolve host "<url>": No address associated with hostname
我的 manifest.xml 中的权限,因为之前提出的大多数问题都通过添加此行来解决,但在我的情况下不起作用。
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="ANDROID.PERMISSION.ACCESS_NETWORK_STATE" />
请注意,我尝试使用 RequestString 类时遇到了同样的错误,但是当我尝试使用另一个 url ("http://google.com") 时,我遇到了服务器错误,这更好一点,因为我们知道原因。
【问题讨论】:
-
你打开你的wifi连接了吗?此外,请尝试从手机的 Web 浏览器访问该 Url,以确保它可以访问
-
@BNK 是的,当然...也试过了,它是可以访问的。
-
另外,请尝试从手机的网络浏览器访问该网址,以确保它可以访问
-
请贴出初始化
url变量的代码 -
嗯,你提供的url肯定有错误,或者服务器不存在。
标签: android android-volley android-networking