2012-05-26 14 views
13

में हेडर जोड़ना मेरे पास मूल एएसपी.नेट एमवीसी 3 ऐप है।एएसपी.नेट एमवीसी 3

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

मैं किसी को है कि फोन गैप में आयोजित किया जाएगा एक JQuery मोबाइल एप्लिकेशन के माध्यम से इस कार्रवाई पहुंचने देने की कोशिश कर रहा हूँ: मैं एक बुनियादी कार्रवाई है कि ऐसा दिखाई देता है। मुझे बताया गया कि मुझे अपने हेडर में Access-Control-Allow-Origin: * वापस करने की आवश्यकता है। हालांकि, मुझे यकीन नहीं है कि हेडर में इसे कैसे वापस किया जाए। क्या कोई मुझे दिखा सकता है कि ऐसा कैसे करें?

आपको बहुत बहुत धन्यवाद।

उत्तर

25
Response.AppendHeader("Access-Control-Allow-Origin", "*"); 
+0

मैं एक और समस्या है: जब ब्राउज़र अगले अनुरोध करते हैं। इसमें सर्वर पर "एक्सेस-कंट्रोल-ऑब्जेक्ट-ऑरिजन" शीर्षलेख शामिल नहीं है। ब्राउज़र को सभी शीर्षकों को अपनी पूर्व प्रतिक्रिया से कैसे वापस लाएं। –

+0

@ टोलाच। AFAIK का कोई कारण नहीं है कि ब्राउज़र को बाद के अनुरोधों में सभी प्रतिक्रिया शीर्षकों को वापस करना चाहिए। आप हेडर्स को प्रतिक्रिया से प्रचारित करने के लिए जावास्क्रिप्ट [getAllResponseHeaders] (http://help.dottoro.com/ljnxxhwv.php) और [setRequestHeader] (http://help.dottoro.com/ljhcrlbv.php) का उपयोग कर सकते हैं निवेदन। – HABO

29
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) 
    { 
     // ... 
    } 
+0

वर्तमान लिंक: http://blog.gregbrant.com/post/Adding-Custom-HTTP-Headers-to-an-ASPNET-MVC-Response –

+0

लिंक काम नहीं कर रहे हैं –

संबंधित मुद्दे