草庐IT

ios - 错误 : __tcp_connection_write_eof_block_invoke Write close callback received error - iOS 10

coder 2023-09-25 原文

同时向 ONVIF 相机发送基于 XML 的 API 请求。它在 iOS 9 设备上运行良好,但在 iOS 10 上出现“500 内部错误”。

XCode 8 控制台打印以下错误消息:

2016-09-30 12:39:51.295419 VCPlugin[278:10183] [] nw_socket_get_input_frames recvmsg(fd 12, 1024 bytes): [54] Connection reset by peer
2016-09-30 12:39:51.301221 VCPlugin[278:10228] [] nw_socket_write_close shutdown(12, SHUT_WR): [57] Socket is not connected
2016-09-30 12:39:51.301307 VCPlugin[278:10228] [] nw_endpoint_flow_service_writes [3 10.107.2.153:80 ready socket-flow (satisfied)] Write request has 0 frame count, 0 byte count
2016-09-30 12:39:51.301903 VCPlugin[278:10185] [] __tcp_connection_write_eof_block_invoke Write close callback received error: [89] Operation canceled
2016-09-30 12:41:13.492053 VCPlugin[278:10287] [] __tcp_connection_write_eof_block_invoke Write close callback received error: [57] Socket is not connected
2016-09-30 12:42:51.278617 VCPlugin[278:10228] [] __tcp_connection_write_eof_block_invoke Write close callback received error: [22] Invalid argument

如果用户重试并重试三到四次,然后从服务器获得有效的 xml 响应。

我不知道这个 iOS 10 行为。

这是我为调用 XML API 发布请求编写的代码:

NSMutableURLRequest * urlRequest = [NSMutableURLRequest requestWithURL:url];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setHTTPBody:body];
[urlRequest setValue: @"application/soap+xml" forHTTPHeaderField:@"Content-Type"];
[urlRequest setValue: @"application/soap+xml" forHTTPHeaderField:@"Accept"];

NSURLSessionDataTask * dataTask = [defaultSession dataTaskWithRequest:urlRequest completionHandler:^(NSData *data1, NSURLResponse *response, NSError *error) {
        NSLog(@"Response:%@ %@\n", response, error);
        if(error == nil)
        {
             NSString * text = [[NSString alloc] initWithData: data1 encoding: NSUTF8StringEncoding];
              NSLog(@"Data = %@",text);
        }
}];

[dataTask resume];

另请阅读 Apple Form , 但没有得到解决方案。

最佳答案

试试这段代码:

我也遇到了同样的问题,不过你可以做点什么,

1) 进入Product -> Scheme -> Edit Scheme
2) 在左侧的运行部分,选择参数选项卡并在环境变量中放置它。

OS_ACTIVITY_MODE to value : disable.

有关详细信息,请查看以下屏幕截图。

这将删除控制台中的消息。

但我仍然在为 PLBuildVersion 在两者中实现而苦苦挣扎....

希望对你有帮助!

关于ios - 错误 : __tcp_connection_write_eof_block_invoke Write close callback received error - iOS 10,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39791692/

有关ios - 错误 : __tcp_connection_write_eof_block_invoke Write close callback received error - iOS 10的更多相关文章

随机推荐