Showing more detailed error messages to user im making an app with titanium that connects to a drupal backend. im using the awesome library (https://github.com/jbeuckm/drupal-client).

how can i show more detailed error messages (e.g. email/username has already been taken)?

i only get a 406 error code in ios when i register a new user that has already been registered.

error: {"success":false,"code":406,"source":{"url":"http://domain/user/register.json","method":"POST","ondatastream":null},"type":"error","error":"HTTP error"}


i noticed that when i connect with android there are more detailed messages available (e.source.statusText for instance).

any ideas?

update:

in android i get the information that i would need (statusText). why cant i access it in ios?

error: {"code":-1,"source":{"autoRedirect":true,"status":406,"allResponseHeaders":"Date:Mon, 13 Jul 2015 10:09:47 GMT\nServer:Apache/2.2.15 (Red Hat)\nExpires:Sun, 19 Nov 1978 05:00:00 GMT\nCache-Control:no-cache, must-revalidate, post-check=0, pre-check=0\nContent-Length:259\nContent-Type:application/json\nKeep-Alive:timeout=15, max=100\nConnection:Keep-Alive\n","connected":false,"password":null,"validatesSecureCertificate":false,"tlsVersion":0,"responseText":"{\"form_errors\":{\"name\":\"The name &lt;em class=\\\"placeholder\\\"&gt;editor83&lt;/em&gt; is already taken.\",\"mail\":\"The e-mail address &lt;em class=\\\"placeholder\\\"&gt;editor83@vodes.net&lt;/em&gt; is already registered. &lt;a href=\\\"/user/password\\\"&gt;Have you forgotten your password?&lt;/a&gt;\"}}","username":null,"responseXML":null,"statusText":"Not Acceptable : The name editor83 is already taken. The e-mail address editor83@vodes.net is already registered. Have you forgotten your password?","apiName":"Ti.Network.HTTPClient","location":"http://editors-testdrupal.rhcloud.com/rest/v1/user/register.json","readyState":3,"domain":null,"responseData":{"height":0,"bubbleParent":true,"type":2,"mimeType":"application/json","apiName":"Ti.Blob","nativePath":null,"file":null,"text":null,"length":259,"width":0},"connectionType":"POST","autoEncodeUrl":true,"bubbleParent":true,"_events":{"disposehandle":{}}},"error":"Not Acceptable : The name editor83 is already taken. The e-mail address editor83@vodes.net is already registered. Have you forgotten your password?","success":false}
[INFO] :   ALERT: (KrollRuntimeThread) [47,17536] Not Acceptable : The name editor83 is already taken. The e-mail address editor83@vodes.net is already registered. Have you forgotten your password?
[INFO] :   [object Object]account was not created


update 2:

it seems to be more of a ecplise/android/ios issue, so ive posted the question on the main forum. 

https://stackoverflow.com/questions/31381522/different-rest-object-output-in-android-and-ios 

if i get an answer ill post it here as well.
You might want to check services.alter.api.php

As described in this post

&lt;?php
/**
 * Allows alteration of error data before the status code or message are returned.
 *
 * @param array $error_alter_array
 *   An associative array with the following keys:
 *     - 'code': the HTTP status code.
 *     - 'header_message': the message returned as part of the error response
 *       (for instance, "404 Not found").
 *     - 'body_data': data that was passed to the thrown exception.
 * @param array $controller
 *   The current controller definition.
 * @param array $arguments
 *   Arguments passed to the current controller.
 *
 * @see RESTServer-&gt;handleException()
*/
function hook_rest_server_execute_errors_alter(&amp;$error_alter_array, $controller, $arguments) {

}