我正在使用 Flex 4 AIR 应用程序中的 Pingdom API,并使用 Flash Builder 4 中内置的数据/服务构建器。Pingdom 的 API 构建在 SOAP 之上(至少目前如此),并且 Flash Builder 4 能够导入 WSDL文件很好,但是当我尝试在我的令牌中发送 Auth_login 请求时,结果变量为空。我不确定我是否在寻找错误的地方,或者什么。确切地说,我正在查看 Auth_loginResult.token.result 的值。
token.result 是正确的查看位置吗?如果结果为空,他们无论如何都要弄清楚它为什么为空,这意味着检查 WSDL 是否可用,以及它是否是一个有效的请求?
我在应用程序中运行网络监视器以确保它在线。
我的登录过程代码如下
<?xml version="1.0" encoding="utf-8"?>
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:pingdomapi="services.pingdomapi.*"
title="Login">
<fx:Script>
<![CDATA[
import valueObjects.Auth_CredentialsData;
protected function login(event:MouseEvent):void
{
var credentials:Auth_CredentialsData = new Auth_CredentialsData;
credentials.username = txt_username.text;
credentials.password = txt_password.text;
Auth_loginResult.token = pingdomAPI.Auth_login('****',credentials);
trace(Auth_loginResult.token.result);
}
]]>
</fx:Script>
<fx:Declarations>
<s:CallResponder id="Auth_loginResult"/>
<pingdomapi:PingdomAPI id="pingdomAPI"/>
</fx:Declarations>
<s:Label x="10" y="10" text="Username"/>
<s:TextInput id="txt_username" x="10" y="41" text="david.long@cagedata.com"/>
<s:Label x="10" y="104" text="Password"/>
<s:TextInput id="txt_password" x="10" y="135" displayAsPassword="true" text="Simpsons#1"/>
<s:Button id="btn_login" y="198" right="30" label="Login" click="login(event)"/>
</s:View>