gpt4 book ai didi

visual-c++ - 如何中止使用 wininet 发送的请求?

转载 作者:行者123 更新时间:2023-12-02 04:58:39 29 4
gpt4 key购买 nike

我有一个 MFC 应用程序,我曾在其中向相应的服务器发送 post 请求。这是一个http请求,用于上传文件。

但是要求中止发送的请求。就像如果用户正在发送一个大文件并且用户应该能够在完成之前取消请求。

我正在使用 wininet api,HttpSendRequestExInternetWriteFileHttpEndRequest。但是一旦发送了请求,除非请求已完成或超时,否则我无法在两者之间中止它。

任何人请建议取消处理或发送请求的选项。

我试过了closing the request handles , 但请求仍然没有被中止。

请哪位大侠帮忙提前致谢

最佳答案

从客户端的角度来看,您只能使用 InternetCloseHandle 例程中止/断开当前操作。这将从客户端的角度立即中止请求/操作,因此用户可以继续执行其他操作。

但是当数据已经发送到服务器时,这只会导致没有返回响应!

正如 Igor 所说,一旦发送了完整的请求(数据)(此时客户端只是等待从服务器接收数据),您就不能中止服务器的处理。

因此,您需要查看要取消“发送”请求或通过使用第一个请求的响应从客户端向服务器发送新的“删除”请求来恢复服务器上的文件添加的位置请求(此响应应包含有关添加文件的信息 - 如 key )。

关于visual-c++ - 如何中止使用 wininet 发送的请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19089929/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com