2016-04-06 7 views
6

एएसपी.नेट वेब फॉर्म में, मैं अजाक्स "पोस्ट" अनुरोध का उपयोग करके पेज विधि को कॉल करने में सक्षम हूं। लेकिन मैं "अनुरोध प्राप्त करें" का उपयोग कर पेज विधि को कॉल करने में सक्षम नहीं हूं।एएसपी.नेट वेब फॉर्म में, "प्राप्त करें" अनुरोध का उपयोग करके पृष्ठ विधि को कैसे कॉल करें

इस मामले में, "प्राप्त करें" अनुरोध का उपयोग करके पेज विधियों को कॉल करना संभव है। क्या आप इसके लिए कोई सुझाव प्रदान कर सकते हैं? पृष्ठ विधि के लिए उदाहरण कोड:

[WebMethod] 
    public static string GetData() 
    {    
     return "test"; 
    } 
+1

जब आप विधि को कॉल करने का प्रयास करते हैं तो क्या होता है? कोई त्रुटि अपवाद? – Izzy

+1

क्या आपने अपनी विधि को [ScriptMethod (UseHttpGet = true)] –

उत्तर

9

@vc टिप्पणी में उल्लेख है क्योंकि आप अपने अनुरोध GET होना चाहता हूँ WebMethodScriptMethodAttribute के उपयोग के साथ-साथ करने की आवश्यकता होगी के रूप में और नहीं POST तो अपने कोड बदलने इस प्रकार है:

[WebMethod] 
[ScriptMethod(UseHttpGet = true)] 
public static string GetData() 
{ 
    return "test"; 
} 

और मार्कअप में आप कर सकते हैं

function ShowTestMessage() { 
    $.ajax({ 
      type: "GET", 
      url: "YourPage.aspx/GetData", 
      data: {}, 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: OnSuccess, 
    failure: function (response) { 
     alert(response.d); 
    } 
}); 
} 
function OnSuccess(response) { 
alert(response.d); 
} 

<input id="ButtonId" type="button" value="Show Message" 
onclick = "ShowTestMessage()" /> 

निम्नलिखित संदर्भ

using System.Web.Script.Services; 
using System.Web.Services; 
+0

के साथ सजाने की कोशिश की थी क्या आपने कोड डीबग किया था? क्या यह काम कर रहा है ? –

+0

@ डिलीप नंदकुमार हां यह मेरी देव मशीन – Izzy

+0

पर काम कर रहा है हां यह काम कर रहा है। JQuery के पुराने संस्करण के साथ परीक्षण किया। उसके लिए क्षमा चाहता हूँ ! –

3

Ajax GET requests to an ASP.NET Page Method?

मुझे लगता है कि लिंक उपयोगी होगा जोड़ने के लिए मत भूलना। यह कहते हैं सुरक्षा कारणों से, एएसपी.Net AJAX पृष्ठ विधियां केवल POST अनुरोधों का समर्थन करती हैं।

[ScriptMethod (UseHttpGet = true)] के साथ विधि को सजाने का प्रयास किया लेकिन अभी भी अनुरोध प्राप्त नहीं हुआ है।

भी [ScriptMethod (UseHttpGet = true)] के लिए MSDN दस्तावेज़ उद्धरण इस संपत्ति सही पर सेट किया जाता है, तो ग्राहक प्रॉक्सी कोड का उपयोग करता HTTP GET वेब सेवा को कॉल करने। यह सुनिश्चित नहीं है कि यह वेब फ़ॉर्म में वेबमाइंड के लिए काम करता है या नहीं।

पीएस: ठीक है Jquery 2.2.2 के नए संस्करणों के साथ काम करना प्रतीत होता है। कृपया यह भी सुनिश्चित करें कि आप POST विधि के रूप में अनुरोध निकाय का उपयोग न करने वाले क्वेरी स्ट्रिंग के माध्यम से डेटा भेजते हैं।

0

[ScriptMethod(UseHttpGet = true)] का उपयोग करते समय, मैं "प्राप्त करें" अनुरोध का उपयोग करके पेज विधि को कॉल करने में सक्षम हूं, लेकिन अब यह "पोस्ट" को रोकता है।

क्या हम अनुरोध विधि "पोस्ट" और "प्राप्त" दोनों का उपयोग करके पृष्ठ विधि "गेटडाटा" को कॉल करने का कोई तरीका है? नोट: मुझे "पोस्ट" और "प्राप्त करें" अनुरोधों के लिए "GetData" के समान विधि नाम का उपयोग करना होगा।

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