私のブログアプリケーションでPingback自動検出を実装するために、すべてのASP MVC HTTP応答ヘッダーをデフォルトで別の値に変更しようとしています。 (カッシーニ上)デフォルトのASP MVCリクエストヘッダーを変更して独自の値を追加する
デフォルトのヘッダーは次のとおりです。
Cache-Control private
Connection Close
Content-Length 20901
Content-Type text/html; charset=utf-8
Date Fri, 20 Apr 2012 22:46:11 GMT
Server ASP.NET Development Server/10.0.0.0
X-AspNet-Version 4.0.30319
X-AspNetMvc-Version 3.0
と私は余分な値が追加したい:
X-Pingback: http://localhost:4912/pingback/xmlrpcserver
は、私は少しググとNEETソリューションを発見した: を - にActionFilterAttributeから派生し、OnResultExecutedメソッドをオーバーライドします。
public class HttpHeaderAttribute : ActionFilterAttribute
{
public string Name { get; set; }
public string Value { get; set; }
public HttpHeaderAttribute(string name, string value)
{
Name = name;
Value = value;
}
public override void OnResultExecuted(ResultExecutedContext filterContext)
{
filterContext.HttpContext.Request.Headers.Add(Name, Value);
base.OnResultExecuted(filterContext);
}
}
そして、単純に私は私のコントローラメソッドの属性置く:
任意のアイデア:私は次のエラーを取得するアプリをラントとき
[HttpHeader("X-Pingback","http://localhost:4912/pingback/xmlrpcserver")]
public ActionResult Index()
{
var allArticles = _repository.GetPublishedArticles(SortOrder.desc);
return View(allArticles);
}
を?
あなたはIISExpress代わりにカッシーニを試してみましたか? –
@dtryonいいえ、私は今それを試してみましょう –
それは実際にはカッシーニからのエラーです;) –