2010-02-28 17 views
39

मैं यह त्रुटि समझ में नहीं आता jQuery ajax प्रतिक्रिया के साथ विफल "JsonResult टेस्ट()" में त्रुटि उत्पन्न नहीं है, मैं अन्य परियोजनाओं ASP.NET MVC के रूप मेंASP.NET MVC 2 -,

धन्यवाद

कर रहा हूँ

त्रुटि:

System.InvalidOperationException: This request has been blocked because sensitive information could be disclosed to third party web sites when this is used in a GET request. To allow GET requests, set JsonRequestBehavior to AllowGet. 

[InvalidOperationException: This request has been blocked because sensitive information could be disclosed to third party web sites when this is used in a GET request. To allow GET requests, set JsonRequestBehavior to AllowGet.] 
    System.Web.Mvc.JsonResult.ExecuteResult(ControllerContext context) +263733 
    System.Web.Mvc.ControllerActionInvoker.InvokeActionResult(ControllerContext controllerContext, ActionResult actionResult) +10 
    System.Web.Mvc.<>c__DisplayClass14.<InvokeActionResultWithFilters>b__11() +20 
    System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func`1 continuation) +251 
    System.Web.Mvc.<>c__DisplayClass16.<InvokeActionResultWithFilters>b__13() +19 
    System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) +178 
    System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) +314 
    System.Web.Mvc.Controller.ExecuteCore() +105 
    System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext) +39 
    System.Web.Mvc.ControllerBase.System.Web.Mvc.IController.Execute(RequestContext requestContext) +7 
    System.Web.Mvc.<>c__DisplayClass8.<BeginProcessRequest>b__4() +34 
    System.Web.Mvc.Async.<>c__DisplayClass1.<MakeVoidDelegate>b__0() +21 
    System.Web.Mvc.Async.<>c__DisplayClass8`1.<BeginSynchronous>b__7(IAsyncResult _) +12 
    System.Web.Mvc.Async.WrappedAsyncResult`1.End() +59 
    System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +44 
    System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) +7 
    System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +8678910 
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +155 

C#

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.Mvc; 

namespace Tesis.Controllers 
{ 
    public class AnalysisSourceDataController : Controller 
    { 
     // 
     // GET: /AnalysisSourceData/ 

     public ActionResult Index() 
     { 
      return View(); 
     } 

     public JsonResult Test() 
     { 
      return Json(new { mymsg = "my msg" }); 
     } 
    } 
} 

जावास्क्रिप्ट

<script type="text/javascript"> 
    $(function() { 
     $.getJSON("/AnalysisSourceData/Test", function(data) { 
      alert(data.mymsg); 
     }); 
    }); 
</script> 

उत्तर

65

आप क्या समझ नहीं सकते? त्रुटि शायद ही अधिक वर्णनात्मक हो सकती है। यह JSON hijacking को रोकने के लिए एक सुरक्षा सुविधा है, तो आप इसे इस तरह निष्क्रिय कर सकते हैं ..

return Json(new { mymsg = "my msg" }, JsonRequestBehavior.AllowGet); 

लेकिन आप implications को समझना चाहिए।

+0

मुझे नहीं पता कि अन्य परियोजनाओं को मुझे इस पैरामीटर की आवश्यकता नहीं है। –

+6

यह एमवीसीवी 1 परियोजनाओं में एएसपी.नेट एमवीसी 2 के साथ जोड़ा गया एक फीचर था जिसे आपको इसे जोड़ने की आवश्यकता नहीं थी। फीचर जोड़ना सिर्फ लोगों को रोकता है और सोचता है कि जीईटी पर जेएसओएन डेटा को उजागर करने से पहले वे क्या कर रहे हैं (जिसमें कुछ पूरी तरह वैध अनुप्रयोग हैं)। –

+0

धन्यवाद, मुझे प्रलेखन –