ServerMethod中居然能直接返回object,如:
http get结果是:
{"result":[{"type":"ServerMethodsUnit1.TwxhObject","id":1,"fields":{"Birthdat":26997,"Age":35}}]}
方法执行完毕后,Delphi会释放这个Object,但是最好用try...except来拦截一下,在出现错误时确保释放。
由于可以直接返回object,因此完全可以不必支持variant序列化,而SOAP却希望能支持variant的序列化。
另外,之前说http get得不到具体的异常信息,看起来不完全正确,如果是ServerMethod内部出现异常,客户端是可以看到具体的异常信息的,如在上面的方法中认为举发一个异常,客户端得到:
{"error":"MyError"}
但是如果你传入一个服务器没有的方法,得到的就是:
您指定的网页无法访问!
错误类型:500