我有一个https .net webservice . 使用soap UI等工具调用Web方法可以正常工作 . 我无法从flex调用web方法 . 我的WSDL在flex中加载很好 .
部署时,我的Flex应用程序和Web服务位于同一服务器上 . 当使用机器URL并从服务器内访问时,它工作正常,但是当我使用https url进行flex应用程序时 .
我有完全访问权限的跨域策略,并且我在服务器上有一个有效的SSL证书 .
当我在调试模式下从本地机器拨打电话时,我在Fiddler中看到以下内容 -
WSDL调用正常并且返回正确,协议显示为HTTPS,其中随后的webmethod调用将协议显示为HTTP并返回错误 - 我已经坚持了很长一段时间 . 任何帮助是极大的赞赏 .
谢谢,尼基尔 .
这是我的Flex代码,它调用它:
//business delegate
public function BusinessDelegate(responder : IResponder):void
{
_responder = responder;
_service = ServiceLocator.getInstance().getService("sqlWebService");
_service.loadWSDL();
}
//Login User
public function Login(userId:String,password:String):void
{
var asyncToken:AsyncToken = _service.LoginUser(userId,password);
asyncToken.addResponder(_responder);
}
并且服务定位器具有以下标记,其中我将URL从外部设置为https:// ....
id="sqlWebService"
useProxy="false"
concurrency="multiple"
showBusyCursor="true"
wsdl="{Url}"/>