Կարգավիճակի արխիվներ: Sharepoint Web Services

Ինչպես նշել ժողովրդին որպես Search շրջանակները / Բովանդակության Աղբյուր Օգտագործելով SharePoint 2013 ՌԵՍՏ API

I had reason to work with the SharePoint 2013 Search API via REST for the first time. I wanted to search for people, not documents. The key learning here is that you specify content sources via its GUID (or at least in this case). The following jQuery snippet shows how:

    loadExpertsAsync: ֆունկցիա() {

        jQuery.support.cors = ճիշտ;

        $.ajax({
            url: սա.CreateFullApiUrl() +
                "?querytext='portals'&sourceid='b09a7990-05ea-4af9-81ef-edfab16c4e31'" +
                "&selectproperties='LinkedInProfileUrl,GoogleCirclesProfileUrl,BALargeProfilePictureUrls,BAGridPictures,WorkEmail,Skills,AboutMe,Interests,JobTitle,PastProjects,PictureURL,PreferredName,TwitterHandle,LinkedInProfileUrl,PreferredName,GoogleCirclesProfileUrl'" +
                "&rowlimit=99",
            մեթոդ: "GET",
            headers: { "Accept": "application/json; odata=verbose" },
            cache: սուտ,
            success: ֆունկցիա (արդյունք) {

Իմ դեպքում,, I’m running the API against SharePoint online. To get the GUID, I followed these steps:

  1. Access the SharePoint admin center
  2. Select “search” from the left hand navigation
  3. Select “Manage Result Sources”
  4. Select “Local People Results”
  5. Look at the URL.

My URL looked something like:

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

The sourceid parameter is what worked for me.

(I understand that the sourceid may actually be a sort of permanent thing with SP, but I’ll always check anyway 🙂 ).

</վերջ>

undefinedԱնդամագրվել իմ բլոգում.

Գտեք Twitter-ում http://www.twitter.com/pagalvin

Lists.asmx, GetListItems եւ Թղթապանակներ

Ես անում մի հետազոտության մեկին: Այսօր ամբողջ list.asmx ինտերնետային ծառայության տրամադրած որպես Sharepoint 2010 (եւ վաղ).  Նա կարողանում էր ստանալ ցանկ տարրեր է սկզբնական թղթապանակը (այդ թվում անուններով ենթահաշիվների թղթապանակների), բայց չէր կարողանում ստանալ տարրերի ենթահաշիվների պահոցներ.  Ես էլ նայում եմ վրա internets, եւ դա զարմանալիորեն սովորական հարցի շուրջ.  Դեռ, Ես չէի կարող ստանալ լավ պատասխան այն պարզ հարցին,, «Եթե ես գիտեմ, որ թղթապանակը, Ինչպես կարող եմ ստանալ իրերը է թղթապանակում?"  Ճիշտն ասած, Չեմ փորձել, որ դժվար է, քանի որ ես ուզում թիվ այս մեկը, որ մենակ մի քիչ ժպիտ.

Համար: Այս է, Ես ստեղծել կայքը անունով է Բլոգերներ սցենար »եւ մաքսային ցուցակի անունով" Custom ցանկ հետ, ենթաօրենսդրական պանակները ".  Ես ստեղծել պանակները անվան:

  • Տարի 2005
  • Տարի 2006
  • Տարի 2007

Ես ավելացրել է մի քանի տարրեր պանակը "2006".  Սա կարծես:

image

Ընկերս չի գրում C # կոդը, այլ, օգտագործելով java մասին, ուստի Օճառ ծրար էր, որ նա, իրոք, կարիք ունի:  Ստանալու համար, թե, Ես գրեցի մի քիչ jQuery, ապա կիրառվում ջութակահար է ստանալ փաստացի հաղորդագրությունները http զրույց.

Ահա համապատասխան jQuery (Ես պատճենահանված կոդը իջնում ​​ներքեւ, եթե ցանկանում եք պատճենել / կպցնել):

image

Նրանք առաջին հերթին կարեւոր է նաեւ այնպես, որ <queryOptions> իսկ <QueryOptions> հանգույց.  Երկրորդ բանալին այն է, որ <Թղթապանակ> ուռուցք է հղում, որը հաճախորդը կարող է օգտվել.

Կարող են լինել նաեւ այլ տարբերակներ, որպեսզի այդ, սակայն աշխատել է նաեւ ինձ համար, երբ, օգտագործելով jQuery.

Ահա Օճառ ծրար, որ վերը նշված:

<soapenv:Ծրարի xmlns:soapenv =’http :/://schemas.xmlsoap.org / օճառ / ծրար /’>                
  <soapenv:Մարմին>
    <GetListItems xmlns =’
http :/://schemas.microsoft.com / Sharepoint / օճառ /’>
      <listname>Custom List է ենթաօրենսդրական Թղթապանակներ</listname>
      <viewFields>  
        <ViewFields>
          <FieldRef Անունը = 'Վերնագիր’ />
          <FieldRef Անունը = 'EncodedAbsUrl’ />
        </ViewFields>
      </viewFields>
      <queryOptions>
        <QueryOptions>
          <Թղթապանակ>
http :/://demoserver1/Blogging Սցենարները խմբին ցուցակները խմբին Custom ցուցակ հետ, ենթաօրենսդրական Թղթապանակներ / տարի 2006 թ.</Թղթապանակ>
        </QueryOptions>
      </queryOptions>
   
</GetListItems>
  </soapenv:Մարմին>
</soapenv:Ծրար>

Շատ օրինակներ եւ քննարկումների շուրջ: Այս պատճառով ես կարծում եմ, որ ինձ հարկավոր էր, <QueryOptions> եւ նշեք թղթապանակը անունը.  Ինձ համար, Ես ուզում եմ, այնպես էլ փաթեթավորեք հաղորդագրությունները It ներսում <queryOptions> ինչպես նաեւ նշեք URL-լիովին որակյալ համար <Թղթապանակ> հանգույց.

Ահա jQuery AJAX կարգավորում:

$(փաստաթուղթ).պատրաստ(ֆունկցիա() {
       եղել soapEnv =
           "<soapenv:Ծրարի xmlns:soapenv =’http :/://schemas.xmlsoap.org / օճառ / ծրար /’> \
               <soapenv:Մարմին> \
                    <GetListItems xmlns =’http :/://schemas.microsoft.com / Sharepoint / օճառ /’> \
                       <listname>Custom List է ենթաօրենսդրական Թղթապանակներ</listname> \
                       <viewFields> \
                           <ViewFields> \
                              <FieldRef Անունը = 'Վերնագիր’ /> \
                              <FieldRef Անունը = 'EncodedAbsUrl’ /> \
                          </ViewFields> \
                       </viewFields> \
                       <queryOptions> \
                         <QueryOptions> \
                           <Թղթապանակ>http://demoserver1/Blogging Սցենարները խմբին ցուցակները խմբին Custom ցուցակ հետ, ենթաօրենսդրական Թղթապանակներ / տարի 2006 թ.</Թղթապանակ> \
                         </QueryOptions> \
                       </queryOptions> \
                   </GetListItems> \
               </soapenv:Մարմին> \
           </soapenv:Ծրար>";

</վերջ>

Անդամագրվել իմ բլոգում.

Գտեք Twitter-ում http://www.twitter.com/pagalvin

Lists.asmx, GetList եւ "Value չի կարող լինել առ”

Այսօր ես հայտնաբերեցի, որ GetList() մեթոդ lists.asmx Վեբ ծառայություն է կոչվել շատ ուշադիր, կամ էլ հակված շպրտել մի խորհրդավոր "արժեք չի կարող լինել առ»: Բացառություն (եւ որ ինչ ենթադրելով, դուք կարող եք ստանալ նախկինում ավելի վատ ընդհանուր error message, “Exception of type ‘Microsoft.SharePoint.SoapServer.SoapServerException’ էին նետում »:)  Մասնավորապես, Ես գտա, որ դուք չեք կարող ապահովել որեւէ տեսակի նախածանցը վրա GetList մեթոդով.  Հետեւյալ jQuery պատառներ ցույց կետը:

image

Եթե ​​դուք դա, Վեբ ծառայությունը արձագանքում է «Արժեքների չի կարող առ»: Սույն ջութակահար-նախատեսված HTTP պատճեն:

<?XML տարբերակ = "1.0" encoding="utf-8"?>
  <օճառ:Ծրար
     xmlns:օճառ ="
http :/://schemas.xmlsoap.org / օճառ / ծրար /"    
     xmlns:xsi = "
http :/://www.w3.org/2001/XMLSchema-instance"
     xmlns:xsd ="
http :/://www.w3.org/2001/XMLSchema">

  <օճառ:Մարմին>
    <օճառ:Մեղք>
      <faultcode>օճառ:Server</faultcode>
      <faultstring>
        Exception of type ‘Microsoft.SharePoint.SoapServer.SoapServerException’ էր նետում.
      </faultstring>
      <մանրամասն>
        <error լարային xmlns ="
http :/://schemas.microsoft.com / Sharepoint / օճառ /">
Value կարող լինել առ.
        </errorstring>
      </մանրամասն>
    </օճառ:Մեղք>
  </օճառ:Մարմին>
</օճառ:Ծրար>

Իհարկե, Դուք հավանաբար չէր ավելացնել, որ «S0" նախածանցը ձեր սեփական, սակայն որոշ գործիքներ, որոնք հակված է դա անել (նման Խավարման).

Այս ամենը ավելի շփոթեցնող / խախտելով, քանի որ այլ մեթոդներ հանդուրժում prefixes.  Օրինակ, որ GetListCollection մեթոդը դեմ չէ, եթե դա եղել prefixed, նույնիսկ անհեթեթություն prefixes նման "xyzzy":

image

Այս «արժեք չի կարող լինել առ»: Թվում է, բավականին հետ lists.asmx ուստի հուսով եմ սա կօգնի մեկին դուրս ապագայում.

</վերջ>

Անդամագրվել իմ բլոգում.

Գտեք Twitter-ում http://www.twitter.com/pagalvin