问题
when I make a request to a url, sometimes i get a 403 response and the app crashes
I have edited my entitlements-Release.plist and entitlements-debug.plist so that they contain:
key-chain-access-groups: Array item 0: $(AppIdentifierPrefix)worklight.group
this step let me make the call a few more times, but eventually crashed my app again
mfp -v 7.1.0.00.20151227-1730
2016-01-21 12:41:49.332 kmf[2236:1264285] [DEBUG] [WORKLIGHT] +[WLClient sharedInstance] in WLClient.m:165 :: IBMMobilieFirstFoundation.framework version = 7.1-2015/11/14 16:38:36
2016-01-21 12:41:49.362 kmf[2236:1266048] [DEBUG] [WL_AFHTTPRequestOperationManagerWrapper_PACKAGE] +[WLAFHTTPRequestOperationManagerWrapper requestWithURL:] in WLAFHTTPRequestOperationManagerWrapper.m:52 :: Request url is http://sdc01dcxp01.keybank.com:16131/kmf/adapters/kttAdapter/mfp/itemAdd
2016-01-21 12:41:49.372 kmf[2236:1266048] [DEBUG] [WL_AFHTTPRequestOperationManagerWrapper_PACKAGE] -[WLAFHTTPRequestOperationManagerWrapper start] in WLAFHTTPRequestOperationManagerWrapper.m:320 :: Starting the request with URL http://sdc01dcxp01.keybank.com:16131/kmf/adapters/kttAdapter/mfp/itemAdd
2016-01-21 12:41:50.296 kmf[2236:1264285] [DEBUG] [WL_AFHTTPRequestOperationManagerWrapper_PACKAGE] -[WLAFHTTPRequestOperationManagerWrapper requestFailed:error:] in WLAFHTTPRequestOperationManagerWrapper.m:352 :: Request Failed
2016-01-21 12:41:50.298 kmf[2236:1264285] [DEBUG] [WL_AFHTTPRequestOperationManagerWrapper_PACKAGE] -[WLAFHTTPRequestOperationManagerWrapper requestFailed:error:] in WLAFHTTPRequestOperationManagerWrapper.m:353 :: Response Status Code : 403
2016-01-21 12:41:50.308 kmf[2236:1264285] [DEBUG] [WL_AFHTTPRequestOperationManagerWrapper_PACKAGE] -[WLAFHTTPRequestOperationManagerWrapper requestFailed:error:] in WLAFHTTPRequestOperationManagerWrapper.m:354 :: Response Error : Request failed: forbidden (403)
2016-01-21 12:41:50.316 kmf[2236:1264285] [DEBUG] [WORKLIGHT] +[WLClient sharedInstance] in WLClient.m:165 :: IBMMobilieFirstFoundation.framework version = 7.1-2015/11/14 16:38:36
2016-01-21 12:41:50.327 kmf[2236:1264285] THREAD WARNING: ['WLApp'] took '11.582275' ms. Plugin should use a background thread.
2016-01-21 12:41:50.328 kmf[2236:1267145] [DEBUG] [NONE] Request [http://sdc01dcxp01.keybank.com:16131/kmf/authorization/v1/authorization]
2016-01-21 12:41:51.072 kmf[2236:1264285] [ERROR] [CERTIFICATE_MANAGER] +[WLCertManager generateKeyPair:withPublicKeyLabel:withKeySize:] in WLCertManager.m:222 :: generating keypair --> Failed
2016-01-21 12:41:51.121 kmf[2236:1264285] [FATAL] [WORKLIGHT] Uncaught Exception: Keychain returned the following status: -34018
2016-01-21 12:41:51.154 kmf[2236:1264285] *** Terminating app due to uncaught exception 'Unable to generate key pair.', reason: 'Keychain returned the following status: -34018'
*** First throw call stack:
(0x18374d900 0x182dbbf80 0x18374d848 0x10041217c 0x10041640c 0x1003f8428 0x100371670 0x1000e6860 0x1000e612c 0x18410244c 0x1837055f4 0x183705298 0x1837029ac 0x183631680 0x184b40088 0x1884a8d90 0x100088f88 0x1831d28b8)
libc++abi.dylib: terminating with uncaught exception of type NSException
回答1:
A web server may return a 403 Forbidden HTTP status code in response to a request from a client for a web page or resource to indicate that the server can be reached and understood the request, but refuses to take any further action. Status code 403 responses are the result of the web server being configured to deny access, for some reason, to the requested resource by the client.
entitlements-Release.plist and entitlements-debug.plist edits are alright so more clarification check out this link mobilefirst native ios keychain wrapper issue
来源:https://stackoverflow.com/questions/34930879/mobilefirst-ios-error-crashing-my-app