Давайте предположим, что у меня определен простой сервис WCF
[OperationContract, WebInvoke(Method = "GET", UriTemplate = "*")]
string TestMe ()
и простой модуль http для перезаписи URL
context.BeginRequest += (s,e)=>{
var ctx = HttpContext.Current;
var method = ctx.Request.AppRelativeCurrentExecutionFilePath.RemoveFirst("~/");
var args = ctx.Request.QueryString.ToString();
ctx.RewritePath("~/MyService.svc", method, args, false);
}
Таким образом, каждый вызов метода будет переведен в метод TestMe спараметры
Теперь я хочу опубликовать весь запрос здесь,
[OperationContract, WebInvoke(Method = "POST", UriTemplate = "*")]
string TestMe (Stream request)
Для этого вызова RewritePath не передает поток, отправляемый запросчиком службы, и я не смог найти способ обойти его.Как переписать URL-адрес и сохранить исходный байтовый массив запроса?