由于 html 错误,NSJSONserialisation 给出 nil

NSJSONserialisation giving nil due to html errors

提问人:Ghazalah 提问时间:5/24/2018 更新时间:5/24/2018 访问量:27

问:

如何忽略 API 响应中的任何 HTML 错误,只考虑成功的 JSON?实际上,响应有一些错误,因此当我进行 JSONSerialisation 时,它总是给我一个 nil 值。我知道 API 应该得到纠正,但是有没有办法在应用程序端忽略这些错误?这是我得到的 API 响应:

<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Notice</p>
<p>Message:  Undefined variable: Messages</p>
<p>Filename: models/model_ws.php</p>
<p>Line Number: 1783</p>
</div>

<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Notice</p>
<p>Message:  Undefined variable: resendPass</p>
<p>Filename: models/model_ws.php</p>
<p>Line Number: 2021</p>
</div>

{"success":1,"lang":[{"languages":"Spanish","Email_Address":"Correo electronico","Password":"Contrase\u00f1a","ForgoturP":"Olvido su contrase\u00f1a?","New_User":"Nuevo usuario?",
"Sign_IN":"Iniciar sesion","Sign_Up":"Registracion","FName":"Nombre","accountNotCreatedMsg":"Cuenta no fue creada, favor intentar mas tarde...","Last_Name":"Apellido","Email":"Correo electronico","CPassword":"Confirmar contrase\u00f1a","Next":"Siguiente",
"By_Signing":"Al registrarme, yo acepto los terminos","Terms_Services":"Terminos de servicios","and":"y",
"Privacy_Policy":"Politica de privacidad","Security":"Pregunta de seguridad","Answer":"Respuesta",
"Country":"Pais","Mobile_Number":" Numero Movil","Gender":"Sexo","Birthday":"Fecha de nacimiento (DD\/MM)","Anniversary":"Aniversario (DD\/MM)","Cancel":"Cancelar",
"Digit_Number":"Numero de tarjeta virtual","Passcode":"Codigo","Uncheck":"Desactivar la casilla si no quiere recibir  notificaciones push.","Physical":"Desea tarjeta fisica?","Address":"Direccion",
"City":"Ciudad","State":"Estado","Zip":"Codigo Postal","Save_your_Details":"Guardar su informacion","Merchant":"Comerciante","CardNum":"Numero de tarjeta terminado en","Nick_Name":"Apodo",
"LoyaltyP":"Programa de Lealtad","Points":"Puntos","Visits":"Visitas","Rebates":"Reembolsos","Balance":"Balance","Pay_Accure":"Pagar\/Acumular”,…………]}
html objective-c rest null nsjsonserialization

评论

2赞 Daniel Krom 5/24/2018
修复错误,忽略它们感觉不对。如果PHP代码属于您,请阅读以下内容: php.net/manual/en/function.error-reporting.php 您可以告诉PHP不要直接将错误写入STDOUT或根本不写入错误
1赞 Alper 5/24/2018
如果总是这样,就把第一个之前的字符串部分扔掉,然后从那里开始工作?{
1赞 Larme 5/24/2018
我也建议在服务器上解决问题。但与此同时,要让它工作,请将结果读取为 ,并删除 HTML(SO 对此有疑问,希望 JSON 中没有任何 HTML),然后将其转换回(您可能需要修剪空格和换行符)并使用 .这是一个解决方案,可以在服务器上的其他开发人员解决问题时继续工作。这很笨拙,不是一个可行的发布解决方案。NSStringNSDataNSJSONSerialization

答: 暂无答案