Mercurial > urweb
comparison lib/js/urweb.js @ 2188:61866c765485
Better client-side error messages for RPC failures
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Sun, 01 Nov 2015 12:23:44 -0500 |
parents | 14c45a0b6362 |
children | 43393a4a66ce |
comparison
equal
deleted
inserted
replaced
2187:14c45a0b6362 | 2188:61866c765485 |
---|---|
470 | 470 |
471 function onConnectFail(f) { | 471 function onConnectFail(f) { |
472 connectHandlers = cons(flift(f), connectHandlers); | 472 connectHandlers = cons(flift(f), connectHandlers); |
473 } | 473 } |
474 | 474 |
475 function conn() { | 475 function conn(msg) { |
476 runHandlers("Connect", connectHandlers, null); | 476 var rx = /(.*)<body>((.|\n|\r)*)<\/body>(.*)/g; |
477 var arr = rx.exec(msg); | |
478 msg = (arr && arr.length >= 3) ? arr[2] : msg; | |
479 runHandlers("RPC failure", connectHandlers, msg); | |
477 } | 480 } |
478 | 481 |
479 var serverHandlers = null; | 482 var serverHandlers = null; |
480 | 483 |
481 function onServerError(f) { | 484 function onServerError(f) { |
1593 k(null); | 1596 k(null); |
1594 } | 1597 } |
1595 } | 1598 } |
1596 } else { | 1599 } else { |
1597 if (isN == null) | 1600 if (isN == null) |
1598 conn(); | 1601 conn(xhr.responseText); |
1599 else | 1602 else |
1600 k(null); | 1603 k(null); |
1601 } | 1604 } |
1602 | 1605 |
1603 xhrFinished(xhr); | 1606 xhrFinished(xhr); |