Получить бинарный файл вложения объекта SP.File, используя JavaScript

Я столкнулся с проблемой при получении бинарного файла списка вложений. Я использую этот код, чтобы получить значение:

var appweburl = window.location.protocol + "//" + window.location.host
    + _spPageContextInfo.webServerRelativeUrl;

var hostweburl = _spPageContextInfo.siteAbsoluteUrl;

var executor = new SP.RequestExecutor(appweburl);

executor.executeAsync({
    url: appweburl + "/_api/SP.AppContextSite(@target)/web/getfilebyserverrelativeurl('/Lists/myList/Attachments/1/myImage.jpeg')/$value?@target='" + hostweburl + "'",
    method: "GET",
    binaryStringResponseBody: true,
    success: function (data) {
        console.log(data.body);
    },
    error: function (err) {
        alert(JSON.stringify(err));
    },
});

Но он возвращает мне эту ошибку:

    GET "https://mySharePointAddress/Site/Subsite/web/_api/SP.AppContextSite(@target)/web/getfilebyserverrelativeurl('/Lists/myList/Attachments/1/myImage.jpeg')/$value?@target=%27https://mySharepointAddress/Site%27 403 (Forbidden)

    Uncaught ReferenceError: ret is not defined
    at Function.SP.RequestExecutorInternalSharedUtility.$13 (SP.RequestExecutor.js:2)
    at Function.SP.RequestExecutor.internalProcessXMLHttpRequestOnreadystatechange (SP.RequestExecutor.js:2)
    at XMLHttpRequest.<anonymous> (SP.RequestExecutor.js:2)

Может кто-то помочь мне, пожалуйста?

1 ответ

Я нашел решение моей проблемы с помощью jquery ajax, спасибо Генри Альгусу http://www.henryalgus.com/reading-binary-files-using-jquery-ajax/

Другие вопросы по тегам