OK, guys, I'll try to summarise my painful experience with HTTPService.

Things which could go wrong:
- HTTPService settings, i.e. type of the parameters object. You should
check that if you send XML, the type of the object is XML and
content-type is application/xml
- I had a lot of mysterious problems with #2032 error, so I ended up
with a solution to create HTTPService object, send data and then
disconnect() it and "kill" (assign a null). As soon as the FlashPlayer
code is closed unfortunately we have no idea how it works with sockets
and what are the real error codes we get.

-requests could be cached by the browser/server, to prevent this it is
a good idea always add some random number parameter to the request URL
(someURL?nocache=xyz)

-server side (PHP)
magic sequence to prevent caching
    header('Pragma: bogus');
    header('Cache-control: bogus');
similar things should be done for other servers, check Judah's blog:
http://www.judahfrangipane.com/blog/?p=87

header('Expires: 0') - causes a lot of #2032's

- error #2032 could be produced in certain cases when server replies
with unexpected response. Usually we see #1090 - XML parser error, but
sometimes, #2032 is thrown. I happens when server replies with
anythinh else rather then 200 code and also some problems with PHP -
it is always wise to check server logs for any errors.


-combination Apache2 + SSL + Gentoo + HTTPService does not work. This
is just a matter of fact. I didn't have time nor resources to
investigate it further, but FreeBSD + Apache1 + SSL + HTPPService
works seamlessly. I suspect that Apache2+SSL + FlashPlayer have some
problem with packet resends during the error recovery - this is the
only result I've got looking through megs of Wireshark logfiles. 

The result of this combination was #2032 error due to the timeouts in
the network - if SSL connection is dropped there was a little chance
that it will be renegotiated again.



PS I have not dealt with Charles, but I highly recommend Wireshark -
this thing sits at the lowest level and allows you to see the raw
network packets. And it is free.


Cheers,
Dmitri.


Reply via email to