do_async_method_url overrides the content-type given in extra headers. Its possible to work around it by using "Content-Type" instead of "content-type". This is relevant at least in the XMLRPC module, not sure if anybody noticed. here is a patch
arne
diff --git a/lib/modules/Protocols.pmod/HTTP.pmod/Session.pike b/lib/modules/Protocols.pmod/HTTP.pmod/Session.pike index 5b82fc9..b7e2e74 100644 --- a/lib/modules/Protocols.pmod/HTTP.pmod/Session.pike +++ b/lib/modules/Protocols.pmod/HTTP.pmod/Session.pike @@ -874,8 +874,8 @@ Request async_do_method_url(string method,
if (method=="POST") extra_headers= - (extra_headers||([]))+ - (["content-type":"application/x-www-form-urlencoded"]); + (["content-type":"application/x-www-form-urlencoded"])+ + (extra_headers||([]));
p->do_async(p->prepare_method(method,url,query_variables, extra_headers,data));