如何使用 Android AsyncHttpClient 发送 HTTP POST 参数



我正在尝试Android的AsyncHttpClient库,并尝试将HTTP POST发送到我的Express(NodeJS)服务器,并且我在将参数附加到POST请求时遇到困难。

这就是我所做的:

AsyncHttpClient httpClient = new AsyncHttpClient();
RequestParams requestParams = new RequestParams();
requestParams.put("username", usernameEditText.getText().toString());
requestParams.put("password", passwordEditText.getText().toString());
httpClient.post("http://1.2.3.4/sign-up", requestParams, new JsonHttpResponseHandler() {
    // here I override the onSuccess and onFailure methods
}

但是当请求到达 Express 服务器时,我在任何地方都找不到参数。我习惯于在req.body中找到 POST 参数,但是:

app.post('/sign-up', function(req, res) {
  var username = req.body.username; // throws error because req.body is undefined
});

AsyncHttpClient库坏了还是我做错了什么?

您可能缺少正文解析器中间件。

var express = require('express')
var bodyParser = require('body-parser')
var app = express()
// parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: false }))
// parse application/json
app.use(bodyParser.json())

相关内容

  • 没有找到相关文章

最新更新