$().SPServices({
operation: "GetGroupCollectionFromUser",
userLoginName: $().SPServices.SPGetCurrentUser(),
async: false,
debug: true,
completefunc: function (xData, Status) {
console.log($.fn.jquery);
console.log(xData.responseXML);
console.log(xData.responseXML.xml);
}
});
У меня проблема с SPServices, не работающим на нашем сервере dev. Он отлично работает на prod и тестировании, но не на dev по какой-то причине. Если я запустил код выше, я получу следующее в консоли.SPServices loading, но не работает
{readyState: 0, responseXML не определенно, состояние: 0, его статус: "Нет Транспорт"}
Я читал в Интернете, это может быть проблемой с перекрестными передачами домена поэтому я установить следующее:
$.support.cors = true;
с, что теперь я получаю следующее:
{readyState: 0, responseXML не определено, состояние: 0, его статуса: "Ошибка: недопустимый аргумент"}
I думаю, это потому, что вызов SPGetCurrentUser всегда просто возвращает пустую строку по какой-то причине вместо пользователя. Кто-нибудь видел это поведение раньше? Каковы общие вещи, которые могут вызвать загрузку SPServices, но не могут выполнять вызовы? Спасибо за помощь.
Поскольку вы не на SharePoint 2007, вы должны рассмотреть возможность использования [JavaScript Object Model] (http://stackoverflow.com/documentation/sharepoint/1316/working-with-javascript-client-object- model-jsom), доступный в SP2010 +. Между этим и службами REST я не видел много вариантов использования для SPServices с 2010 года. – Thriggle
Спасибо за ответ Thriggle, но, к сожалению, CSOM в SP2010 довольно наполовину выпечен, так как вы не можете получить группы SP по имени, только по ID в SP2010. Это проблема, потому что у меня нет возможности гарантировать, что идентификаторы групп, которые меня интересуют, будут одинаковыми на разных серверах (prod, dev, staging и т. Д.). Таким образом, поддерживая, какие идентификаторы релевантны, какие серверы становятся кошмар. Вы полностью правы, хотя 2013 и за пределами CSOM - это фантастика. –