13

基本的な ASP.NET MVC 3 アプリがあります。次のような基本的なアクションがあります。

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult AddItem(string id, string name, string description, string username)
{
  // Do stuff
  return Json(new { statusCode = 1 });
}

Phone Gap でホストされる JQuery Mobile アプリを介して誰かがこのアクションにアクセスできるようにしようとしています。Access-Control-Allow-Origin: *ヘッダーに戻る必要があると言われました。ただし、ヘッダーでそれを返す方法がわかりません。誰かがそれを行う方法を教えてもらえますか?

どうもありがとう。

4

2 に答える 2

30
    public class HttpHeaderAttribute : ActionFilterAttribute
    {
        /// 
        /// Gets or sets the name of the HTTP Header.
        /// 
        /// The name.
        public string Name { get; set; }

        /// 
        /// Gets or sets the value of the HTTP Header.
        /// 
        /// The value.
        public string Value { get; set; }

        /// 
        /// Initializes a new instance of the  class.
        /// 
        /// The name.
        /// The value.
        public HttpHeaderAttribute(string name, string value)
        {
            Name = name;
            Value = value;
        }

        public override void OnResultExecuted(ResultExecutedContext filterContext)
        {
            filterContext.HttpContext.Response.AppendHeader(Name, Value);
            base.OnResultExecuted(filterContext);
        }
   }    

[HttpHeader("Access-Control-Allow-Origin","*")]
    public ActionResult myaction(int id)
    {
        // ...
    }
于 2012-05-26T11:47:35.400 に答える
25
Response.AppendHeader("Access-Control-Allow-Origin", "*");
于 2012-05-26T11:17:14.550 に答える