我正在使用Flash Builder 4.5和flex 4.5语言。 我正在使用web服务在json中检索调用.php的数据。
<webservice:Webservice id="webservice" fault="Alert.show(event.fault.faultString + '\n' + event.fault.faultDetail)" showBusyCursor="true"/>
<s:CallResponder id="testResult" result="onTestResult(event)"/>
...
private function onTestResult(e:ResultEvent):void{
Alert.show(ObjectUtil.toString(testResult.lastResult));
}
在Flash Builder的“测试操作”窗口中,我进行了调用,返回的是由数组生成的json对象。
如果我从代码中调用相同的web服务,它会返回一个(对象)#0,所以是一个空的Object。没有错误,只是一个空对象。
任何人都有一些提示吗?
答案 0 :(得分:0)
Webservice
类的ns前缀表示您使用的是自定义实现,而不是框架WebService
类。但是,你没有提供任何细节,所以我会在黑暗中摇摆不定:
如果您的自定义服务基于HTTPService
课程,请确保您设置resultFormat='text'
。默认值为XML
,这会导致您遇到问题。
如果你正在使用Framework WebService
类,那么你不能,因为它是为SOAP webservices而设计的,而不是JSON。 (来自mx.rpc.soap.WebService
的文档:)
WebService类提供对基于SOAP的Web服务的访问 远程服务器。
如果是其他一些实现,请提供更多详细信息。