Tworzę aplikację Sharepoint i jestem ograniczony do korzystania z JavaScript (jQuery w zestawie) i punktów końcowych REST. Chciałbym usunąć element z hosta za pomocą aplikacji internetowej, ale pojawia się błąd (403: FORBIDDEN
). Jest to kod mam tak daleko:Jak usunąć element przy użyciu usługi REST dla programu Sharepoint 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
});
Teraz się dowiedziałem to X-RequestDigest
jest obowiązkowe i znalazłem jakieś wezwanie, aby dostać to od pleców:
$.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);
}
});
Ale to nie działa w ogóle (może to wynikać z tego, że ten kod był dla Sharepoint 2010) i nadal będzie dostarczał mi wiadomość o adresie 403: FORBIDDEN
.
Czy ktoś wie, jak usunąć element listy z jednej z list przy użyciu usługi REST (nie mogę używać/edytować żadnego kodu poza javascript!)?
Każda pomoc jest aprobowana i jeśli potrzebujesz informacji, nie wahaj się zapytać.
Skąd wziął się fragment kodu? Próbuję zrozumieć część SP.AppContextSite (@target). – Christophe
To jest coś, co otrzymałem z samouczka i działałem w przeszłości, to nie jest problem. – Manuel