Category Archives: ВІДПОЧИНОК

HTTP 406 Помилка при використанні кутових $http.get проти SharePoint відпочинку кінцевих точок

Оновлення: Марк оголошення ndersson вказав на цей великий шматок інформація: http://Blogs.Office.com/2014/08/13/JSON-Light-support-Rest-SharePoint-API-Released/. Це багато що пояснює :).

Що може бути коли-небудь найгірших заголовок повідомлення в блозі! Anyhoo.

Я зазвичай робити всі мої Прототипування проти O365 екземпляр. У мене є моє особисте екземпляр так що я не повинні бути турбуюся про зачіпають будь-хто інший. Як у бік – пам'ятаєте, коли ми закликаємо рознесену навколо віртуальних машин наші ноутбуки з МОСС-SQL Server, IIS, Вирішивши проти Hyper-V. VMWare? Anyhoo...

Я розробив програму за допомогою кутових в цьому середовищі, що робить, серед іншого, Це:

$HTTP.Get(serverUrl)
.успіх(функція(дані, статус, заголовки, Config) {

VAR getLinksResponse = даних;

getLinksResponse.value.forEach(функція(theResult) {

// і так далі і так піни

Це працює лише штрафом у двох різних середовищах онлайн SharePoint. Однак, Коли, мій колега портовано на Cloudshare екземпляр, він отримував послугами HTTP 406 помилка (яка була в перший раз я коли-небудь отримав що один, так.. Яй, Я гадаю). Ми зробили кілька досліджень і зауважив, що заголовку «Прийняти» був відключений. SharePoint онлайн була абсолютно щаслива зі:

Прийняти: застосування/json

Але cloudshare екземпляр (яка містить SP прем, відбулася у віртуальному сервері) хотів класичний "odata = verbose" додані також:

Прийняти: застосування/json;odata = verbose

Щоб виправити, що, Ми додали заголовка таким чином:

VAR config = {заголовки: {
"Приймати": ' застосування/json;odata = verbose'
}
};

$HTTP.Get(serverUrl,Config)
.успіх(функція(дані, статус, заголовки, Config) {

VAR getLinksResponse = даних;

getLinksResponse.value.forEach(функція(theResult) {

// і так далі і так піни

Що позбулися на 406, але це також змінив формат відповідь. Це було більше.. verbose. (Ха-ха!) Більше змін були необхідні і ось кінцевий результат:

VAR config = {заголовки: {
"Приймати": ' застосування/json;odata = verbose'
}
};

$HTTP.Get(serverUrl,Config)
.успіх(функція(дані, статус, заголовки, Config) {

VAR getLinksResponse = даних;

getLinksResponse.d.results.forEach(функція(theResult) {

// і так далі і так піни

Це тільки перетворився на 30 хвилина проблема для нас, так ми пощастило. Ми сподіваємося хтось вважає, що це корисна.

</кінець>

Як вказати людей як область пошуку / Джерела вмісту за допомогою SharePoint 2013 REST API

Я була причина, щоб працювати з SharePoint 2013 API пошуку через відпочинок в перший раз. Я хотів би шукати людей, не документів. Ключ, навчання, тут є те, що ви вказати джерела вмісту через його GUID (або, по крайней мере, в цьому випадку). Наступний фрагмент шоу jQuery як:

    loadExpertsAsync: функція() {

        jQuery.support.cors = Істина;

        $.AJAX({
            URL-адреса: Це.CreateFullApiUrl() +
                "?querytext = 'портали'&вихідного коду = "b09a7990-05ea-4af9-81ef-edfab16c4e31"" +
                "&selectproperties ='LinkedInProfileUrl,GoogleCirclesProfileUrl,BALargeProfilePictureUrls,BAGridPictures,WorkEmail,Навички,AboutMe,Інтереси,JobTitle,PastProjects,PictureURL,PreferredName,TwitterHandle,LinkedInProfileUrl,PreferredName,GoogleCirclesProfileUrl'" +
                "&RowLimit = 99",
            метод: "ОТРИМАТИ",
            заголовки: { "Прийняти": "застосування/json; odata = verbose" },
            кеш: ХИБНІСТЬ,
            успіх: функція (Результат) {

У моєму випадку, Я біжу API проти SharePoint онлайн. Щоб отримати ідентифікатор GUID, Я після цих кроків:

  1. Доступ до центру адміністрування SharePoint
  2. Виберіть "Пошук" з лівою рукою навігації
  3. Виберіть опцію "Впорядкувати результат джерела"
  4. Виберіть "Місцевих жителів результати"
  5. Подивіться на URL-адресу.

Мій URL виглядав таким:

https://xyzzy-admin.sharepoint.com/_layouts/15/searchadmin/EditResultSource.aspx?level=tenant&sourceid=b09a7990%2D05ea%2D4af9%2D81ef%2Dedfab16c4e31&view=1

Параметр вихідного коду є те, що працював для мене.

(Я розумію, що вихідного коду фактично може бути свого роду константа одна з СП, але я завжди буду перевіряти все одно 🙂 ).

</кінець>

undefinedПідписатися на мій блог.

Йди за мною на Twitter в http://www.twitter.com/pagalvin

Приклад SharePoint відпочинку дзвінки

Ось набір зразків відпочинку викликів, які робота для мене і може допомогти вам, а. Станом на 02/2014, Є два приклади 🙂

  1. Посилання стовпець із пробілами в імені
  2. Посилання множинного вибору стовпців
  3. Виконувати Пошук людей через відпочинку

 

Я додам до цього, як час проходить.

Ось деякі корисні фарб, я виявив, а також:

Посилання стовпець із пробілами в імені

Я створити Настроюваний список з стовпець з іменем "Блог автора" (простір між блогу і автор).

Є $select для посилання цього стовпця:

image

Просто замініть простір з "_x0020_". Ми бачимо _x0020_ у багатьох прикладах через Інтернет і відпочинку, нічим не відрізняється.

Якщо ви не зробите, Ви будете нести відповідальність, щоб отримати повідомлення про помилку, подібне:

Вираз “Автор блогу” неприпустимі.

Досить просто.

Посилання стовпець підстановки множинного вибору

Настроювання:

  1. Створити Настроюваний список ім'я категорії.
  2. Додати кілька категорій. Я додав категорії константи виглядає:image
  3. Створити ще один особливий список називається MockBlog і додати категорій як список із множинним стовпець (або сайту стовпця, якщо це, як ви викинули).

Додати деякі елементи до списку Mockblog, і ви готові.

Виклик стиль Ajax, використовуючи jQuery буде виглядати приблизно так:

serverUrl   = "/_api/web/списки/GetByTitle('MockBlog')/елементи" +
             "?$виберіть = заголовок,Категорії/назва,Blog_x0020_Author/назва" + 
             "&$Розгорніть = Blog_x0020_Author,Категорії";

Ми розповідаєте SharePoint "Дай назва для всіх категорій (Категорії/назва). Отримати фактичні значення для Назва на $Розгорнутиний список категорії». (Мій спокійного перефразовуючи є ймовірно досить вільно, але це те, як я перебуваю інтерпретації).

Якщо ви робите це за допомогою JavaScript і за допомогою скрипаль дивитися на виході, Ви отримаєте щось на зразок цього в обмін:

 

image

(Вище є об'єкт JSON)

Виконувати Пошук людей через відпочинку

Я blogged про це окремо. Ключ, щоб вказати параметр вихідного коду, значення якого є GUID Джерело вмісту місцеве населення. (Джерела вмісту раніше називали областей, і це my о my так важко не називати все рамки для мене!).

Дізнайтеся більше про це тут: http://www.mstechblogs.com/paul/?p=10385

 

</кінець>

undefinedПідписатися на мій блог.

Йди за мною на Twitter в http://www.twitter.com/pagalvin

Швидкий і простий: Створення сайту SharePoint за допомогою відпочинку

Є багато ресурсів навколо цього шоу, як це зробити, але я не міг знайти всеосяжний йти до посилання, так ми тут.

Ви можете створити сайт SharePoint за допомогою REST API.  Ось приклад повністю печена:

<!--
    SiteRequestForm.html: Збирати інформацію і створити сайт для користувача.
-->

<Центр>
<Таблиця>
    <TR>
        <TD>Ім'я сайту:</TD>
        <TD><Вхід тип= "текст" Ім’я= "Ім'я сайту" ID= "Ім'я сайту" /></TD>
    </TR>
    <TR>
        <TD ColSpan= "2">
            <Вхід тип= "надсилання" ID= "CreateSiteButton" значення= "Створити сайт" />
        </TD>
    </TR>
</Таблиця>
</Центр>

<сценарій НДЦ="../Plugins/Jquery-1.11.0.min.js"></сценарій>

<сценарій>
VAR CreateSiteLogicContainer = {

    createSiteData: {
            "Параметри": {
                __metadata: { "тип": "SP.WebInfoCreationInformation" },
                URL-адреса: "Paultest1",
                Назва: "Paultest1",
                Опис: "створив залишок веб-Пол!",
                Мова: 1033,
                WebTemplate: "СТС",
                UseUniquePermissions: ХИБНІСТЬ
            }
    },

    createSite: функція () {

        jQuery.support.cors = Істина;

        CreateSiteLogicContainer.createSiteData.parameters.Url = $("#SiteName").Валь();
        
        $.AJAX({
            URL-адреса: "https://bigapplesharepoint.sharepoint.com/NBAIADev/_api/web/webinfos/add",
            метод: "ПОСТ",

            заголовки: {
                «Прийняти": "застосування/json; odata = verbose",
                "content-type": "застосування/json;odata = verbose",
                «X-RequestDigest": $("#__REQUESTDIGEST").Валь()
            },

            дані: JSON.stringify(CreateSiteLogicContainer.createSiteData),

            успіх: функція () { оповіщення("успіх"); },
            помилка: функція () { оповіщення("помилка"); }

        });
    },

    wireUpForm: функція () {
        $("#CreateSiteButton").натисніть кнопку(функція () {
            оповіщення("Близько щоб спробувати створити сайт.");
            CreateSiteLogicContainer.createSite();
        });
    }


}

CreateSiteLogicContainer.wireUpForm();

</сценарій>

Коли успішного, Ви отримуєте пакет JSON у відповідь, як це:

image

Мої основні думки і learnings від цього включають:

  • Такий підхід використовує jQuery.  У моєму випадку, Моя бібліотека jQuery знаходиться в ".../ плагіни. "  Ви хочете, щоб змінити це, щоб на вашому улюбленому розташування JQ.
  • Можна скопіювати та вставити цей фрагмент всю в редактор вмісту веб-частини на сторінці, і він повинен працювати тільки штрафом.  Ви хочете змінити кінцеву точку виклику API і переконайтеся, що ви посилаєтеся JQ правильно.
  • URL-адреса є відносно кінцевої точки вашого API.  У моєму випадку, це створення дочірніх сайтів під https://bigapplesharepoint.com
  • Вам не потрібно надати довжину вмісту. Деякі повідомлення в блозі і MSDN документ має на увазі, що ви робите, але сталося для мене автоматично, який я припускаю, що притримуватися дзвінком $.ajax, самого.
  • Ця лінія необхідні для того, щоб уникнути "заборонених" відповідь: «X-RequestDigest": $("#__REQUESTDIGEST").Валь().  Є й інші способи це зробити, але це дуже приємно.  Я втратив посилання на блог, які надані цей ярлик.  H/T, щоб ви, таємничий blogger!

Удачі і сподіваємося, що це допоможе хтось.

</кінець>

undefinedПідписатися на мій блог.

Йди за мною на Twitter в http://www.twitter.com/pagalvin

Швидкий і простий: SharePoint відпочинку назвати лише повертається 100 Рекорди

Я працюю на громадських облицювальні веб-сайт для мого SharePoint практики тут, у Нью-Йорк і вона використовує багато JavaScript і РЕШТІ дзвінків для відображення вмісту.

Під час розробки шосейні, Тільки створити невеликий набір даних із 10 або так рядків у за настроюваним списком і мої дзвінки відпочинку витягнув звідти.  Одного разу я вдарився список мати кілька сотень рядки даних для очікуване зростання, Я виявив, що я отримував точно 100 рядків, які повернуто назад на мої дзвінки відпочинку.

Це дуже проста річ, щоб адреса.  У моєму випадку (і я вважаю, в більшості випадків), за промовчанням відпочинку закликає до SharePoint (і, можливо, як це промисловий стандарт?) повернення 100 рядки.  Щоб повернути більш ніж за замовчуванням, Скористайтеся параметром $top на ваш дзвінок, як і в:

ОТРИМАТИ /Insights Dev/_api/web/lists/GetByTitle('MockBlog')/елементи?$Виберіть = ID,Назва,Категорії/назва,Blog_x0020_Author/назва,DatePublished,BlogSummary&$Розгорніть = Blog_x0020_Author,Категорії&$Фільтр =&$Топ = 9999

Я вибрав 9999 При цьому з тих пір я знаю, що growth-wise, там не буде більше, ніж 200 або так рядки до цього переліку додано через рік.  Якщо з'ясується, незграбно, Ми можемо реалізувати деякі підкачки вниз по дорозі.

</кінець>

undefinedПідписатися на мій блог.

Йди за мною на Twitter в http://www.twitter.com/pagalvin