首页 > Java > java教程 > 如何从 Android 将 POST 数据发送到 PHP 脚本?

如何从 Android 将 POST 数据发送到 PHP 脚本?

Barbara Streisand
发布: 2024-12-30 03:29:33
原创
190 人浏览过

How to Send POST Data to a PHP Script from Android?

如何在 Android 中发送 POST 数据

对于精通 PHP、JavaScript 和其他脚本语言但不熟悉 Java 和 Android 的开发人员,本指南提供了将 POST 数据发送到 PHP 脚本并显示结果的解决方案。

已更新方法 (Android 6.0 )

此更新的解决方案利用 AsyncTask,推荐用于 Android 中的后台任务。

public class CallAPI extends AsyncTask<String, String, String> {

    @Override
    protected String doInBackground(String... params) {
        String urlString = params[0]; // URL to call
        String data = params[1]; // Data to post

        try {
            URL url = new URL(urlString);
            HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
            OutputStream out = new BufferedOutputStream(urlConnection.getOutputStream());
            BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(out, "UTF-8"));
            writer.write(data);
            writer.flush();
            writer.close();
            out.close();

            urlConnection.connect();
        } catch (Exception e) {
            System.out.println(e.getMessage());
        }
    }
}
登录后复制

原始方法(Android 5.1 及以下)

对于运行 Android 5.1 及以下版本的设备,Apache HttpClient 可以使用:

public void postData() {
    HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new HttpPost("http://www.yoursite.com/script.php");
    List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
    nameValuePairs.add(new BasicNameValuePair("id", "12345"));
    nameValuePairs.add(new BasicNameValuePair("stringdata", "Hi"));
    httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

    try {
        HttpResponse response = httpclient.execute(httppost);
    } catch (Exception e) {
        // Handle exceptions
    }
}
登录后复制

以上是如何从 Android 将 POST 数据发送到 PHP 脚本?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板