java - Android Studio - httpparams、httpclient 等旧命令不再有效

标签 java android android-studio

HttpClientHttpPost 等命令无法正常工作。谁能帮帮我?

 @Override
    protected users doInBackground(Void... params){
        Map<String, String> dataToSend = new HashMap<>();
        dataToSend.put("x", users.x + "");
        dataToSend.put("y", users.y);

        URL url = new URL(SERVER_ADRESS);
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        HttpParams httpRequestPramas = new BasicHttpParams();
        conn.setConnectionTimeout(httpRequestPramas, CONNECTION_TIME);
        HttpConnectionParams.setSoTimeout(httpRequestPramas, CONNECTION_TIME);

        HttpClient client = new DefaultHttpClient(httpRequestPramas);
        HttpPost post = new HttpPost(SERVER_ADRESS + "login.php");

        users returnedusers = null;
        try {
            post.setEntity(new UrlEncodedFormEntity(dataToSend));
            HttpResponse httpResponse = client.execute(post);

            HttpEntity entity = httpResponse.getEntity();
            String result = EntityUtils.toString(entity);
            JSONObject jObject = new JSONObject(result);
            if (jObject.length() == 0){
                users = null;
            }else{
                String vorname = jObject.getString("y");
                int kundennummer = jObject.getInt("x");

                returnedusers = new users(users.y, users.x);

            }
        }catch (Exception e){
            e.printStackTrace();
        }

        return returnedusers;
    }

感谢您的帮助。

最佳答案

这样试试

URL url = new URL("http://example.sitedemo.service.php");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
Uri.Builder builder = new Uri.Builder().appendQueryParameter("username", "maven")
                                       .appendQueryParameter("password", "123");
String query = builder.build().getEncodedQuery();

OutputStream os = conn.getOutputStream();
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(os, "UTF-8"));
writer.write(query);
writer.flush();
writer.close();
os.close();

conn.connect();

InputStream in = new BufferedInputStream(conn.getInputStream());
response = IOUtils.toString(in, "UTF-8");

引用- android.net.Uri.Builder

关于java - Android Studio - httpparams、httpclient 等旧命令不再有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31338087/

相关文章:

java - 无法在运行时设置复选框的背景颜色

android - Google Place API 获取地点的经纬度

java - 如何将菜单文件夹添加到android studio项目的res文件夹中

Android SearchView 设置默认展开

java - 创建两个具有相同长度和相同值但顺序不同的数组

java - 在java中正确声明 float 和长类型?

java - 为什么首选 Java 类的接口(interface)?

java - 在 ListView 中保存 Checkbox 的状态,不能使游标最终化

java - Sharedpreference 似乎不起作用,无法显示存储的数据

java - 如何在 android studio 中从 SD 卡、相机和内部存储中选择照片并通过电子邮件发送?另外,如何通过电子邮件发送电话号码?