我有一个在本地主机上运行的node.js服务器,并使用Android应用程序尝试使用服务器上的代码生成客户端令牌;但是,使用创建新TextHttpResponseHandler的AsyncHttpClient .get()方法时,不会调用Success方法或Failed方法。我可以在Chrome中打开localhost:3000,而客户端令牌没有后顾之忧,但在Android应用程序上没有响应。
Node.js服务器:
var braintree = require('braintree')
var express = require('express')
var app = express()
var gateway = braintree.connect({
accessToken: "access_token removed"
});
app.listen(3000);
app.get("/client_token", function (req, res) {
gateway.clientToken.generate({}, function (err, response) {
res.send(response.clientToken);
});
});
Android代码:
private void generateClientToken() {
AsyncHttpClient client = new AsyncHttpClient();
client.get("http://localhost:3000/client_token", new TextHttpResponseHandler() {
@Override
public void onFailure(int statusCode, Header[] headers, String responseString, Throwable throwable) {
Log.i(TAG, "onFailure: ");
}
@Override
public void onSuccess(int statusCode, Header[] headers, String responseString) {
Log.i(TAG, "onSuccess: ");
CLIENT_TOKEN = responseString;
}
});
}
我尝试使用runOnUIThread()方法,但是得到相同的结果。 重申一下,在运行此方法时,不会运行任何功能,也不执行日志,并且不会更改客户端令牌变量。
任何帮助表示赞赏! 干杯!