¿Alguien sabe si/donde los códigos de estado HTTP, as specified here, están definidos en el SDK de iOS? ¿O debería esperar redefinirlos manualmente en un archivo de constantes?¿Están definidos los códigos de estado HTTP en cualquier parte del SDK de iOS?
Respuesta
hice un
grep -r '404' *
en
/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/
y vino con las manos vacías por lo que la respuesta es casi seguro que "no".
O tal vez los códigos se definen en algún lugar como una enumeración con valores relativos, como kHTTPErrorBadRequestCodes = 400 y kHTTPErrorNotFound = kHTTPErrorBadRequestCodes + 4 ... por lo que no puede estar seguro ... – AliSoftware
Puedo decir con confianza que eso sería bastante absurdo así que lo dudo – Kalle
Estoy de acuerdo, lo dudo también;) pero llamamos todavía sigue esperando ^^ – AliSoftware
Bueno, que se definen en el sentido de que
[NSHTTPURLResponse localizedStringForStatusCode:(NSInteger)statusCode]
puede devolver una cadena para el código de estado dado. ¿Es esto lo que estás buscando?
No del todo - Utilizo códigos de estado HTTP para controlar la lógica de la aplicación - por ejemplo, 402 activará un AlertView decirle al usuario que debe hacer una compra en la aplicación para continuar. He #definido HTTP_PAYMENT_REQUIRED 402, pero creo que ya debería estar presente en algún lugar de la API, como lo es con Android. – esilver
El código de estado http se puede definir mediante la respuesta del servidor. Cuando hay una conexión, puede usar NSURLRespuesta para leer el código de estado. Esas respuestas 4 ** se pueden definir internamente en su servidor.
Creo que JocelynH lo tiene bien: por el w3.org [link] (http://www.w3.org/Protocols/rfc2616/ rfc2616-sec10.html) en el OP, "Excepto cuando se responde a una solicitud HEAD, el servidor DEBERÍA incluir una entidad que contenga una explicación de la situación de error ..." Supongo que Apple eligió, por cualquier motivo, optar por no participar del juego enum para el rango 400 de errores porque se supone que dependen del servicio. (No estoy necesariamente de acuerdo con este razonamiento). – clozach
Tampoco pude encontrar un archivo de encabezado que esperaba existir, así que tuve que escribir uno propio.
Con HTTPStatusCodes.h contenido en el proyecto nv-ios-http-status en GitHub, el despacho basado en códigos de estado HTTP se puede escribir como el siguiente.
#import "HTTPStatusCodes.h"
......
- (void)connection:(NSURLConnection *)connection
didReceiveResponse:(NSURLResponse *)response
{
NSHTTPURLResponse *res = (NSHTTPURLResponse *)response;
switch ([res statusCode])
{
// 200 OK
case kHTTPStatusCodeOK:
......;
}
......
}
espero HTTPStatusCodes.h puede ahorrar tiempo de ti y de otros desarrolladores.
Hay una biblioteca completa Obj-C con todos los códigos definidos hasta la fecha: https://github.com/rafiki270/HTTP-Status-Codes-for-Objective-C
ACTUALIZACIÓN: Versión nuevo Swift está aquí: https://github.com/manGoweb/StatusCodes
También hay un colgante Swift reutilizarlo:
- 1. NSUrlConnectionDelegate - Obtener códigos de estado http
- 2. RESTO: asignación 404 códigos de estado HTTP
- 3. ¿Los códigos de estado HTTP son considerados "números mágicos"?
- 4. Recuperar códigos de estado HTTPResponse/HTTPRequest iPhone SDK?
- 5. Códigos de estado del shell en make
- 6. ¿Cómo están los códigos chinos?
- 7. que vuelven códigos de estado HTTP en Python CGI
- 8. ¿Qué códigos de estado HTTP cuentan como éxito en jQuery.ajax?
- 9. Cómo obtener códigos de estado HTTP numéricos en PowerShell
- 10. Capturar códigos de estado http con scrapy spider
- 11. ¿Están definidos los valores booleanos negativos?
- 12. Internet Explorer Internet Failure Códigos de estado HTTP
- 13. RESTO: errores en la aplicación de mapeo para los códigos de estado HTTP
- 14. ¿Cómo manejar globalmente los errores HTTP en Grails (códigos de estado 4xx/5xx)?
- 15. ¿Usa códigos de estado HTTP para reflejar el éxito/falla de la solicitud del servicio web?
- 16. ¿Están realmente rotos los códigos de salida de Java?
- 17. Los símbolos de compilación condicional no están definidos
- 18. un mecanismo genérico para hacer frente a los códigos de estado HTTP
- 19. ¿Cómo evaluar los códigos de respuesta http del script bash/shell?
- 20. Cómo escuchar los códigos de estado de redirección 301/302 en solicitudes de imágenes entre dominios?
- 21. ¿Están UILocalNotifications programadas parte de la copia de seguridad del dispositivo iOS?
- 22. excepciones Correlación de códigos de estado HTTP en servicios web REST
- 23. Phonegap Media API (Android) - Los medios no están definidos
- 24. ¿cómo verifico un código de estado de respuesta de solicitud HTTP desde iOS?
- 25. Estado del soporte D en iOS
- 26. Lista completa de códigos de estado HTTP QUE NO INCLUYEN UN CUERPO DE RESPUESTA
- 27. Deshacer parte de los cambios sin estado en git
- 28. Maneja otros códigos de estado en solicitud $ .ajax
- 29. Significado de los diferentes códigos de estado en los paquetes de respuesta de error APNS
- 30. Eliminación de SDK de iOS de OSX
hice un -r grep '404' * en/desa oper/Plataformas/iPhoneOS.plataforma/Desarrollador/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/y salió con las manos vacías por lo que la respuesta es casi seguro que es "no". – Kalle
@Kalle Debes publicar tu comentario como respuesta, parece ser definitivo para mí. – benzado
Hecho. :) (Relleno de longitud de comentario mínimo) – Kalle