Android http请求,更新服务器数据状态成功,服务器返回时如果网络中断,怎么处理?

这样一个流程:
1、手机发送请求。
2、服务器端接收成功,并且更新数据状态。
3、返回成功信息给手机,但此时网络中断。
导致的现象是服务器端认为成功了,但手机端认为失败了,如何能够确保通讯的正确性?想了很久了,非常感谢!!

HTTP协议使用TCP协议传输的,因此在传输数据之前采用三次握手建立TCP连接。第4个包就是HTTP请求,然后是HTTP应答。你的问题是服务器的应答包没有收到,那太简单了。首先是超时定时器到期提示网络无响应。然后可以重新连接即可。仅供参考~追问

多谢~我的场景没有描述清楚。
我是需要手机与服务器一对一绑定,如果服务器接收成功,认为已经绑定,就不会接收手机端的请求了

追答

抱歉,我还真不知道怎么回答你。怎么绑定,编程吗?

追问

对,先在服务器注册用户,然后在手机端登录,登录成功即绑定

追答

抱歉,我对于编程是外行,帮不了你了。

追问

没关系,多谢了~

追答

还是等待专家吧,祝你好运。

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-07-11
如果想避免这样的情况就要再发一次请求了,在服务器返回给手机成功信息后,手机再告诉服务器接受到成功信息了,这时服务器再执行真正的确认操作,否则回滚追问

可是这样可以通过一次请求连续完成吗?如果是分开的两次请求,手机成功,发送第二次确认请求时又失败了,服务器却要回滚,状态还是不匹配了

android http-httpclient与HttpURLConnection有什么不同
视情况而定的缓存响应必须要有服务器来进行更新检查。比如说客户端发起了一条类似于 “如果\/foo.png这张图片发生了改变,就将它发送给我” 这样的请求,服务器需要将更新后的数据进行返回,或者返回一个304 Not Modified状态。如果请求的内容没有发生,客户端就不会下载任何数据。没有缓存的响应都是由...

Android:使用OkHttp发送HTTPGet请求,并解析所得的JSON数据。
3. 调用`OkHttpClient`的`newCall(Request)`方法创建`Call`对象,并通过`execute()`方法发送GET请求。服务器返回的数据存储在`response`中。4. 对于POST请求,构建`RequestBody`,使用`POST`方法进行数据提交,同样通过`execute()`获取响应数据。5. 数据通常以JSON格式传输,Android中常用Gson进行解析。...

Android请求服务器报错,请求的接口逻辑代码较多,是因为超时而报的错...
5**:服务器执行一个完全有效请求失败 100——客户必须继续发出请求 101——客户要求服务器根据请求转换HTTP协议版本 200——交易成功 201——提示知道新文件的URL 202——接受和处理、但处理未完成 203——返回信息不确定或不完整 204——请求收到,但返回信息为空 205——服务器完成了请求,用户代理...

如何实现android和服务器的长连接?
1.一种是定时去server查询数据,通常是使用HTTP协议来访问web服务器,称Polling(轮询);2.还有一种是移动端和服务器建立长连接,使用XMPP长连接,称Push(推送)。从耗费的电量、流量和数据延迟性各方面来说,Push有明显的优势。但是使用Push的缺点是:对于客户端:实现和维护相对成本高,在移动无线网络...

人人都能学会!深扒网络模型OKhttp 的 http三次握手底层实现
TCP为何采用三次握手?避免了在连接失败时,由于数据包丢失或超时导致的无效连接。在连接过程中,若一次握手未成功,可以通过重发请求进行恢复。三次握手通过确认机制,确保了连接的稳定性和数据传输的可靠性。HTTP协议作为构建Web的基础,基于TCP协议,提供了一种应用层的socket服务。在客户端与服务器间建立...

区块链的跨域认证是什么,区块链跨链
Access-Control-Request-Method:请求自身使用的方法。 Access-Control-Request-Headers:(可选)自定义的头部信息,多个头部以逗号分隔。 以下是一个带有自定义头部NCZ的使用POST方法发送的请求。 跨源资源共享 发送这个请求后,服务器可以决定是否允许这种类型的请求。服务器通过在响应中发送如下头部与浏览器进行沟通。 Acces...

Android Okhttp\/Retrofit网络请求加解密实现方案
连文档都不用查。主要注意点:0、和接口无关的新加的数据放在请求头里。1、该close的要close,不然会内存泄漏。2、新旧Request和Response要区分好,新的要替换旧的去传递或返回。3、要对response.code()做处理,只有在和后台约定好的返回码下才走解密的逻辑,具体看自己的需求,不一定都是200。

针对Android的性能优化集中哪些方面
(当然,还有一些隐式的http请求框架会缓存服务器数据,在一定时间内不再请求网络,或者当服务器返回304时将之前缓存的数据直接返回)网络方面:1)需要服务端配合的:json数据格式,WebP代替jpg,支持断点续传,多个请求合并成一个,尽量不做重定向,服务器缓存以及负载均衡等。2)对客户端本身,除了上述的...

手机连不上wifi,怎么办?
同时可进入路由器管理界面查看是否设置有特殊功能:如连接数量限制,MAC绑定,上网时间管理等。4、重置网络设置 重置网络设置会将WLAN、移动数据网络、蓝牙等网络的连接记录删除,Android10及以上机型可进入设置--系统管理与升级\/系统管理--备份与重置--重置网络设置--重置设置--按提示操作即可(双卡时需选择...

android Socket连接 与 http连接有什么区别
2)在HTTP 1.1中则可以在一次连接中处理多个请求,并且多个请求可以重叠进行,不需要等待一个请求结束后再发送下一个请求。由于HTTP在每次请求结束后都会主动释放连接,因此HTTP连接是一种“短连接”,要保持客户端程序的在线状态,需要不断地向服务器发起连接请求。通常的做法是即使不需要获得任何数据,...

相似回答