android - 如何取消 Google Cloud Endpoint 端点请求

标签 android google-app-engine google-cloud-endpoints

我在 android studio 中使用 Google Cloud Endpoint Java api 后端和连接的 Android 应用程序。

我正在从 Android 应用程序调用我的后端 API 以检查用户名可用性。

在每个文本更改事件中都会检查用户名。

所以当文本更新时,我希望取消之前的请求。

我如何实现它?

我想到的一种方法是将随机字符串与请求一起发送到服务器,并忽略所有收到的响应,除了最新的。 但这并没有取消请求,网络仍在接收响应。此外,我还必须发送一些额外的数据来跟踪请求。

那么,如何取消呢?有没有办法用谷歌云端点 api 实现它?

附加信息: 我在 android 中使用 AsyncTask 发出谷歌云端点请求。我读了一些关于取消异步任务的内容。能以某种方式在这里使用吗?

最佳答案

取消 API 上的请求不是一种选择,因为它很可能会在您的取消订单到达服务器时得到处理并返回。取消 Asynctask 可能是一种选择,但您仍然必须考虑线程和网络延迟问题。

我认为最安全和最简单的方法是您已经提出的方法,将一个序列添加到您的请求中,并且仅当您收到该序列中的最新回复时才更新 UI。

关于android - 如何取消 Google Cloud Endpoint 端点请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30063960/

相关文章:

android - Google Cloud Messaging (GCM) - 无法实例化接收器 - java.lang.ClassNotFoundException

android - 如何将 SQLite 数据库大小限制为 2MB

java - MVC 模型适合基本的纸牌游戏吗?

android - 我的 Imageview 在最大级别缩放后停止移动

python - 我想使用 GAE 抓取网站并将结果发布到 Google 实体中

android - 在 Android 上使用 Google API Java 客户端,POST 请求似乎没有使用 OAuth 通过 Google App Engine 应用程序进行身份验证

python - 在数据存储中获取最近 7 天的实体

mysql - 连接到 google Cloud SQL 时,AppEngine 中有时会发生通信链接故障错误

google-cloud-platform - 配置智能文档

java - 在非默认模块上运行 appengine 端点