0

我创建了一个扩展 HttpService 的名为 xxHttpService 的类,并且我重写了构造方法,在该构造方法中我设置了一个自定义标头以便发送到本地服务器执行操作。奇怪的是,我无法从标头中获取值,它始终是 A因为我从服务器端将其设置为 B 。有什么见解吗?提前致谢 。

public class xxxHttpService extends HTTPService
    {
        public function xxxHttpService( handler:Function ){

            ****
            this.headers = {HTTP_USER: "Wking"};
            ****
              }
        }
4

1 回答 1

0

如果您不使用 mxml 版本,则 mx.rpc.http.HTTPService 的构造函数具有以下标题:

HTTPService(rootURL:String = null, destination:String = null)

如果您使用的是 mx.rpc.http.mxml.HTTPService 包中的 mxml 版本,则不能有带参数的构造函数。

我想你说的是第一种情况。

覆盖该构造函数将为您提供类定义:

public class XxxHttpService extends HTTPService
{
   public function XxxHttpService(rootURL:String = null, destination:String = null) {
      super(rootURL, destination);
      ...
      this.headers = {HTTP_USER: "Wking", HTTP_PASSWORD: "Equeen"};

   }

}

构建此服务

myService = new XxxHttpService("http://rooturl" , "myDestination")
myService.addEventListener(myHandler, ResultEvent.RESULT)
...
protected function myHandler(event:ResultEvent) {
   ...
}

应该给你:

HTTP_USER:Wking
HTTP_PASSWORD:Equeen

在调用函数 send() 时的 http 标头中

myService.send();

我不确定,但如果你想将它们作为 GET 变量的 POST 发送,你应该这样做:

myService.method = "POST";//or "GET"
myService.send({HTTP_USER: "Wking", HTTP_PASSWORD: "Equeen"});
于 2012-09-30T06:34:28.857 回答