我发出 POST 请求来保护服务器,这需要相当长的时间。我想让它更快。有机会这样做吗?它看起来像这样:
private class GetTokenTask extends AsyncTask<Void, Void, String> {
private final String LOG_TAG = MainActivity.class.getSimpleName();
private Call mCallToServer;
private String mAccessToken;
private OkHttpClient mHttpClient;
private JSONObject mResponseJSON;
private Response mResponseFromServer;
@Override
protected String doInBackground(Void... params) {
mHttpClient = new OkHttpClient();
mCallToServer = mHttpClient.newCall(requestToOAuth());
try {
mResponseFromServer = mCallToServer.execute();
mResponseJSON = new JSONObject(mResponseFromServer.body().string());
mAccessToken = mResponseJSON.getString(getString(R.string.access_token_key));
Log.i(LOG_TAG, mAccessToken);
Log.i(LOG_TAG, JWTUtils.decoded(mAccessToken));
} catch (Exception e) {
e.printStackTrace();
}
return mAccessToken;
}
@Override
protected void onPostExecute(String token) {
super.onPostExecute(token);
}
}
也许是另一个图书馆或类似的东西?
答案 0 :(得分:5)
首先,尝试OkHttp 3.9.0的实验性EventListener API,看看它花费的时间。
https://github.com/square/okhttp/wiki/Events
这也取决于速度有多重要。你想要多少交易速度的正确性。但是有很多原因可能会破坏,因此您需要回退到正确的解决方案。