F
fred carter
I would like to be able to set an arbitrary http header from a
SoapExtension when said extension is acting on behalf of a client. I
have not seen a means for doing so.
For incoming messages or their responses (i.e. when the soap extension
is intercepting a message as a server function), HttpContext... provides
access to the underlying request/response http messages, so headers can
be obtained or added from there. So that's fine.
However, if a SoapExtension is operating on behalf of a client, either a
"real" client or a web service which is calling out (acting as a client)
to another web service, the SoapMessage available to the SoapExtension
does not appear to contain any means for setting or getting arbitrary
http headers. If it's a SoapClientMessage, it can set/get cookies. If
the message is a SoapServerMessage, even this is unavailable
If running as a web service acting as a client, HttpContext.Current
seems to point to the original request/response that arrived.
Thus, the question: if a SoapExtension is invoked on behalf of a web
service client, how does one set/get http headers. Soap headers are
available, but I haven't found access to arbitrary http requests.
SoapExtension when said extension is acting on behalf of a client. I
have not seen a means for doing so.
For incoming messages or their responses (i.e. when the soap extension
is intercepting a message as a server function), HttpContext... provides
access to the underlying request/response http messages, so headers can
be obtained or added from there. So that's fine.
However, if a SoapExtension is operating on behalf of a client, either a
"real" client or a web service which is calling out (acting as a client)
to another web service, the SoapMessage available to the SoapExtension
does not appear to contain any means for setting or getting arbitrary
http headers. If it's a SoapClientMessage, it can set/get cookies. If
the message is a SoapServerMessage, even this is unavailable
If running as a web service acting as a client, HttpContext.Current
seems to point to the original request/response that arrived.
Thus, the question: if a SoapExtension is invoked on behalf of a web
service client, how does one set/get http headers. Soap headers are
available, but I haven't found access to arbitrary http requests.