You use the <mx:HTTPMultiService> tag to represent a
collection of http operations. Each one has a URL, method, parameters and
return type.
You can set attributes such as the URL and method on the
HTTPMultiService tag to act as defaults for values set on each individual
operation tag. The URL of the HTTPMultiService serves as the base url (meaning the prefix)
for any relative urls set on the http operation tags.
Each http operation has a send() method, which makes an HTTP request to the
specified URL, and an HTTP response is returned.
You can pass parameters to the specified URL which are used to put data into the HTTP request.
The contentType property specifies a mime-type which is used to determine the over-the-wire
data format (such as HTTP form encoding or XML).
You can also use a serialization filter to
implement a custom resultFormat such as JSON.
When you do not go through the server-based
proxy service, you can use only HTTP GET or POST methods. However, when you set
the useProxy property to true and you use the server-based proxy service, you
can also use the HTTP HEAD, OPTIONS, TRACE, and DELETE methods.
Note: Unlike the HTTPService class, the HTTPMultiService class does not
define a request property.
Note: Due to a software limitation, like HTTPService, the HTTPMultiService does
not generate user-friendly error messages when using GET and not using a proxy.
This serves as the default property for this instance so that we can
define a set of operations as direct children of the HTTPMultiService
tag in MXML.
The username and password to be used to authenticate a user when
accessing a remote, third-party endpoint such as a web service through a
proxy or a remote object through a custom adapter when using Data Services on the server side.
Dispatched when an HTTPMultiService call returns successfully.
HTTPMultiService
Property Detail
baseURL
property
public var baseURL:String
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
The URL that the HTTPService object should use when computing relative URLs.
This contains a prefix which is prepended onto any URLs when it is set.
It defaults to null in which case the URL for the SWF is used to compute
relative URLs.
concurrency
property
concurrency:String
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
Value that indicates how to handle multiple calls to the same operation within the service.
The concurrency setting set here will be used for operations that do not specify concurrecny.
Individual operations that have the concurrency setting set directly will ignore the value set here.
The default value is multiple. The following values are permitted:
multiple Existing requests are not cancelled, and the developer is
responsible for ensuring the consistency of returned data by carefully
managing the event stream. This is the default value.
single Only a single request at a time is allowed on the operation;
multiple requests generate a fault.
last Making a request cancels any existing request.
Implementation public function get concurrency():String public function set concurrency(value:String):void
contentType
property
public var contentType:String = application/x-www-form-urlencoded
Type of content for service requests.
The default is application/x-www-form-urlencoded which sends requests
like a normal HTTP POST with name-value pairs. application/xml send
requests as XML.
headers
property
public var headers:Object
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
Custom HTTP headers to be sent to the third party endpoint. If multiple headers need to
be sent with the same name the value should be specified as an Array. These headers are sent
to all operations. You can also set headers at the operation level.
makeObjectsBindable
property
public var makeObjectsBindable:Boolean = true
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
When true, the objects returned support data binding to UI controls.
That means they send PropertyChangeEvents when their property values are being changed.
This is the default value for any operations whose makeObjectsBindable property
is not set explicitly.
method
property
public var method:String = GET
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
HTTP method for sending the request if a method is not set explicit on the operation.
Permitted values are GET, POST, HEAD,
OPTIONS, PUT, TRACE and DELETE.
Lowercase letters are converted to uppercase letters. The default value is GET.
operationList
property
operationList:Array
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
This serves as the default property for this instance so that we can
define a set of operations as direct children of the HTTPMultiService
tag in MXML.
Implementation public function get operationList():Array public function set operationList(value:Array):void
resultFormat
property
resultFormat:String
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
Value that indicates how you want to deserialize the result
returned by the HTTP call. The value for this is based on the following:
Whether you are returning XML or name/value pairs.
How you want to access the results; you can access results as an object,
text, or XML.
The default value is object. The following values are permitted:
object The value returned is XML and is parsed as a tree of ActionScript
objects. This is the default.
array The value returned is XML and is parsed as a tree of ActionScript
objects however if the top level object is not an Array, a new Array is created and the result
set as the first item. If makeObjectsBindable is true then the Array
will be wrapped in an ArrayCollection.
xml The value returned is XML and is returned as literal XML in an
ActionScript XMLnode object.
flashvars The value returned is text containing
name=value pairs separated by ampersands, which
is parsed into an ActionScript object.
text The value returned is text, and is left raw.
e4x The value returned is XML and is returned as literal XML
in an ActionScript XML object, which can be accessed using ECMAScript for
XML (E4X) expressions.
Implementation public function get resultFormat():String public function set resultFormat(value:String):void
Default serializationFilter used by all operations which do not set one explicitly
showBusyCursor
property
showBusyCursor:Boolean
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
If true, a busy cursor is displayed while a service is executing. The default
value is false.
Implementation public function get showBusyCursor():Boolean public function set showBusyCursor(value:Boolean):void
useProxy
property
useProxy:Boolean
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
Specifies whether to use the Flex proxy service. The default value is false. If you
do not specify true to proxy requests though the Flex server, you must ensure that the player
can reach the target URL. You also cannot use destinations defined in the services-config.xml file if the
useProxy property is set to false.
The default value is false.
Implementation public function get useProxy():Boolean public function set useProxy(value:Boolean):void
Constructor Detail
HTTPMultiService
()
Constructor
public function HTTPMultiService(baseURL:String = null, destination:String = null)
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
Creates a new HTTPService. If you expect the service to send using relative URLs you may
wish to specify the baseURL that will be the basis for determining the full URL (one example
would be Application.application.url).
Parameters
baseURL:String (default = null) — The URL the HTTPService should use when computing relative URLS.
The properties of the event object have the following values:
Property
Value
bubbles
false
cancelable
true, calling preventDefault()
from the associated token's responder.fault method will prevent
the service or operation from dispatching this event
currentTarget
The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget.
fault
The Fault object that contains the
details of what caused this event.
message
The Message associated with this event.
target
The Object that dispatched the event;
it is not always the Object listening for the event.
Use the currentTarget property to always access the
Object listening for the event.
token
The token that represents the call
to the method. Used in the asynchronous completion token pattern.
The invoke event is fired when an HTTPMultiService call is invoked so long as
an Error is not thrown before the Channel attempts to send the message.
The INVOKE event type.
The properties of the event object have the following values:
Property
Value
bubbles
false
token
The token that represents the indiviudal call
to the method. Used in the asynchronous completion token pattern.
cancelable
true
currentTarget
The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget.
message
The request Message associated with this event.
target
The Object that dispatched the event;
it is not always the Object listening for the event.
Use the currentTarget property to always access the
Object listening for the event.
Dispatched when an HTTPMultiService call returns successfully.
The RESULT event type.
The properties of the event object have the following values:
Property
Value
bubbles
false
cancelable
true, preventDefault()
from the associated token's responder.result method will prevent
the service or operation from dispatching this event
currentTarget
The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget.
message
The Message associated with this event.
target
The Object that dispatched the event;
it is not always the Object listening for the event.
Use the currentTarget property to always access the
Object listening for the event.
result
Result that the RPC call returns.
token
The token that represents the indiviudal call
to the method. Used in the asynchronous completion token pattern.