2012-11-30 31 views
5

के लिए आरईएसटी का उपयोग कर किसी आइटम को कैसे हटाएं मैं एक शेयरपॉइंट ऐप बना रहा हूं और मैं जावास्क्रिप्ट (jQuery शामिल) और आरईएसटी एंडपॉइंट्स का उपयोग करने के लिए प्रतिबंधित हूं। मैं वेब ऐप का उपयोग कर होस्ट से किसी आइटम को हटाना चाहता हूं, लेकिन मुझे एक त्रुटि मिल रही है (403: FORBIDDEN)।शेयरपॉइंट 2013

executor = new SP.RequestExecutor(appweburl); 
executor.executeAsync({ 
    url: appweburl + "/_api/SP.AppContextSite(@target)/web/lists/getbytitle('" + currentListTitle + "')/items(" + result.Id + ")/[email protected]='" + hostweburl + "'", 
    method: "POST", 
    headers: { 
       "accept": "application/json", 
       "X-RequestDigest": ????? 
       "IF-MATCH": "*", 
       "X-HTTP-Method": "DELETE" 
      }, 
    success: onDeleteItemSuccess, 
    error: onDeleteItemFail 
}); 

अब मुझे पता चला इस X-RequestDigest अनिवार्य है और मैं बाकी हिस्सों से इस पाने के लिए कुछ कॉल पाया:

$.ajax({ 
    url: appweburl + "/_api/SP.AppContextSite(@target)/contextinfo/[email protected]='" + hostweburl + "'", 
    type: "POST", 
    contentType: "application/x-www-url-encoded", 
    dataType: "json", 
    success: function (data) { 
     if (data.d) 
     { 
      digestValue = data.d.GetContextWebInformation.FormDigestValue; 
      alert(digestValue); 
     } 
    }, 
    error: function (xhr) { 
     alert(xhr.status + ': ' + xhr.statusText); 
    } 
}); 

लेकिन यह सब पर काम नहीं कर रहा इस कोड को मैं अब तक किया है (ऐसा इसलिए हो सकता है क्योंकि यह कोड Sharepoint 2010 के लिए था) और यह मुझे 403: FORBIDDEN संदेश दे रहा है।

क्या कोई जानता है कि REST का उपयोग कर सूचियों में से किसी एक सूची आइटम को कैसे हटाया जाए (मैं जावास्क्रिप्ट के बाहर किसी भी कोड का उपयोग/संपादन नहीं कर सकता!)?

किसी भी मदद की सराहना की जाती है और यदि आपको कोई जानकारी चाहिए तो कृपया पूछने में संकोच न करें।

+1

आपको स्निपेट कहां से मिला? मैं SP.AppContextSite (@target) भाग को समझने की कोशिश कर रहा हूं। – Christophe

+0

यह एक ट्यूटोरियल से मिला है और अतीत में काम किया है, यह समस्या नहीं है। – Manuel

उत्तर

4

कोड SharePoint 2010 के लिए नहीं किया जा सकता, के रूप में _api सपा के लिए नई है 2013

[अपडेट] हो सकता है कि आप का मतलब है कि आपके कोड सपा 2013 पूर्वावलोकन में काम कर रहा था? एसपी2013 आरटीएम में आपको उपयोग करने की आवश्यकता है:

"Accept": "application/json; odata=verbose" 
+0

हम्म ने वास्तव में समस्या को ठीक किया ... धन्यवाद !! – Manuel

+0

हाय दोस्तों, मैंने सही चीज की कोशिश की लेकिन मुझे अभी भी 'एक्स-अनुरोधडिगेस्ट' भाग प्राप्त करने से '403: फोर्बिडेन' संदेश मिल रहा है। मुझे क्या करना चाहिए? कृपया मुझे साझा करें कि आप इसे कैसे हल कर सकते हैं। बहुत धन्यवाद! –

+0

"एक्स-अनुरोधडिजिस्ट": $ ("#__ REQUESTDIGEST")। वैल() - शेयरपॉइंट डिफ़ॉल्ट मास्टरपेज का उपयोग करें – Vaibhav