【问题标题】:How to receive a POST request from java Android app如何接收来自 java Android 应用程序的 POST 请求
【发布时间】:2014-07-17 11:55:11
【问题描述】:

在地下室,我们正在为 android 编写一个信使应用程序。我们基本上已经弄清楚了逻辑,但是对于以下几点: - 在手机上首次启动应用程序时,我们需要注册用户 - 服务器API(用PHP编写)必须接收手机使用POST请求以json格式发送的数据,例如电话号码和uid。 如您所知,要在 PHP 中处理 POST 数据,您需要知道全局变量,如下所示:

$_POST['some_var'];

问题是,我如何知道这个全局变量要在我的 PHP 脚本中处理?

【问题讨论】:

标签: php android post


【解决方案1】:

通常你在你的 android 代码中定义 POST 键。例如,如果您使用 AsyncHttpClient (http://loopj.com/android-async-http/),您正在执行类似

RequestParams params = new RequestParams();
params.put("key", "value");
params.put("more", "data");

AsyncHttpClient client = new AsyncHttpClient();
client.post("http://www.google.com", params, new AsyncHttpResponseHandler() {

    @Override
    public void onStart() {
        // called before request is started
    }

    @Override
    public void onSuccess(int statusCode, Header[] headers, byte[] response) {
        // called when response HTTP status is "200 OK"
    }    

    @Override
    public void onFailure(int statusCode, Header[] headers, byte[] errorResponse, Throwable e) {
        // called when response HTTP status is "4XX" (eg. 401, 403, 404)
    }

    @Override
    public void onRetry(int retryNo) {
    // called when request is retried
    }
});

RequestParams 定义发送到 PHP 脚本的 POST 变量。对于此示例,您将在 PHP 脚本中获得以下 $_POST 值。

$_POST['key'] // "value"
$_POST['more'] // "data"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-27
    • 2014-12-23
    相关资源
    最近更新 更多