Сбой кода WSDL2Objc за аутентификацией HTTP прокси - Помогите понять журнал сбоя

Я успешно вызываю WS из моего приложения с помощью сгенерированного кода WSDL2Objc. Я отправил свое приложение коллегам с целью тестирования, и они сообщили мне, что приложение вылетает при попытке подключения к WS. Дело в том, что iPad отстает и HTTP-прокси-сервер аутентификации.

Из того, что я понимаю, прокси-сервер аутентификации перенаправляет соединение на страницу HTTP, которая показывает сообщение типа "Пожалуйста, введите учетные данные"

Я должен избежать сбоя и просто показать ошибку, но я не в состоянии понять, где происходит сбой. Я символизировал журнал сбоев, и этот поток вставлен.

Любая помощь приветствуется.

Thread 3 Crashed:
0   CoreFoundation                  0x3592d75c CFHash + 124
1   CoreFoundation                  0x359d89f4 __CFBasicHashStandardHashKey + 8
2   CoreFoundation                  0x359da614 ___CFBasicHashFindBucket_Linear_NoCollision + 40
3   CoreFoundation                  0x359dc680 __CFBasicHashAddValue + 684
4   CoreFoundation                  0x35932f98 CFDictionarySetValue + 68
5   CFNetwork                       0x37516684 URLCredentialStorage::_SetCredentialForProtectionSpace(__CFDictionary*, _CFURLCredential const*, _CFURLProtectionSpace*) + 80
6   CFNetwork                       0x37516f4c URLCredentialStorage::setDefaultCredentialForProtectionSpace(_CFURLCredential const*, _CFURLProtectionSpace*) + 340
7   CFNetwork                       0x374e0e78 CFURLCredentialStorageSetDefaultCredentialForProtectionSpace + 20
8   CFNetwork                       0x3750cbe0 HTTPProtocol::RemoveCredentialPasswordForProtectionSpace(_CFURLCredential const*, _CFURLProtectionSpace*, unsigned char) + 60
9   CFNetwork                       0x3750e49c HTTPProtocol::_CFHTTPProtHasCredentialsForChallenge(__CFHTTPMessage*) + 832
10  CFNetwork                       0x3750f85a HTTPProtocol::attemptAuthentication(__CFHTTPMessage*) + 170
11  CFNetwork                       0x3750f9a4 HTTPProtocol::performHeaderRead() + 280
12  CFNetwork                       0x3750fee6 HTTPProtocol::httpReadStreamEvent(unsigned long) + 82
13  CFNetwork                       0x37510024 HTTPProtocol::_httpReadStreamCB(__CFReadStream*, unsigned long, void*) + 4
14  CoreFoundation                  0x35946a1a _signalEventSync + 70
15  CoreFoundation                  0x35947626 _cfstream_shared_signalEventSync + 198
16  CoreFoundation                  0x3599ea72 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 6
17  CoreFoundation                  0x359a0758 __CFRunLoopDoSources0 + 376
18  CoreFoundation                  0x359a14e4 __CFRunLoopRun + 224
19  CoreFoundation                  0x35931ebc CFRunLoopRunSpecific + 224
20  CoreFoundation                  0x35931dc4 CFRunLoopRunInMode + 52
21  Foundation                      0x36f747f6 +[NSURLConnection(NSURLConnectionReallyInternal) _resourceLoadLoop:] + 206
22  Foundation                      0x36f67382 -[NSThread main] + 38
23  Foundation                      0x36fd95c6 __NSThread__main__ + 966
24  libsystem_c.dylib               0x33af730a _pthread_start + 242
25  libsystem_c.dylib               0x33af8bb4 thread_start + 0

1 ответ

В управлении HTTP-сессией произошла небольшая ошибка. Я нашел подсказку в этом блоге. EXC_BREAKPOINT: странная ошибка. По сути, проблема была в didReceiveAuthenticationChallenge NSURLConnection. По некоторым причинам и только для какого-либо вида услуг didReceiveAuthenticationChallenge передал NULL учетные данные соединению, так как блоггер предполагает, что я попытался сохранить эти строки учетных данных, и EXC_BREAKPOINT исчез.

Другие вопросы по тегам