• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 辦公軟件教程 > 詳細頁面

        SharePoint Search REST API 使用案例圖文教程

        SharePoint Search REST API 使用案例圖文教程

        更新時間:2024-02-08 文章作者:未知 信息來源:網絡 閱讀次數:

        SharePoint發行版本有SharePoint2003、SharePoint2007、Sharepoint 2010、SharePoint2013和SharePoint2016。SharePoint提供了功能強大的團隊協作環境,使得組織能夠在整個組織內部實現整合、組織、查找和提供 SharePoint站點。

        在SharePoint2013中,提供Search REST service搜索服務,你可以在自己的客戶端搜索方法或者移動應用程序中使用,該服務支持REST web request。你可以使用KeyWord Query Language(KQL)或者FAST Query Language(FQL)來對Search REST Service進行搜索查詢,并且,試用與遠程客戶端應用程序、移動應用程序和其他應用程序。

        一、?? Search REST service

        支持方式:

        Search REST service支持 HTTP POST方式和 HTTP GET requests方式

        ?

        GET requests:

        URL:http://server/_api/search/query

        Get方式你有兩種傳參方式,如下:

        http://server/_api/search/query?query_parameter=value&query_parameter=value

        http://server/_api/search/query(query_parameter=value&query_parameter=)

        POST requests:

        URL:http://server/_api/search/postquery

        在Post方式中,你可以使用JavaScript Object Notation (JSON)方式傳參

        ?

        Post方式的場景有三種:

        Get方式傳參,Url超出長度限制,只有使用Post方式;

        查詢條件非常復雜,Get方式難以滿足需要,使用Post方式;

        對于某些特定參數,只支持Post方式。

        二、Get方式查看返回XML

        1、? 在我配置好的搜索頁面上,搜索“北京”,如下圖,有4個結果

        SharePoint Search REST API 使用實例教程_本站

        2、? 使用Get方式返回xml,在_api/search/query 后面添加querytext參數”北京”的Escape值“%E5%8C%97%E4%BA%AC”

        http://URL/_api/search/query?querytext='%E5%8C%97%E4%BA%AC'

        ?SharePoint Search REST API 使用實例教程_本站

        (返回的xml截圖)

        3、單個項目的XML節點

        SharePoint Search REST API 使用實例教程_本站SharePoint Search REST API 使用實例教程_本站
                    Rank      10.3831567764282      Edm.Double              DocId      52      Edm.Int64              WorkId      52      Edm.Int64              Title      北京      Edm.String              Author      系統帳戶      Edm.String              Size      120      Edm.Int64              Path      http://url/DocLib/北方城市/北京.txt      Edm.String              Description            Null              Write      2013-08-21T02:22:46.0000000Z      Edm.DateTime              CollapsingStatus      0      Edm.Int64              HitHighlightedSummary              北京是首都北京是首都北京是首都北京是首都北京是首都北京是首都北京是首都北京是首都北京是首都北京是首都北京是首都北京是首都            Edm.String              HitHighlightedProperties            Null              contentclass      STS_ListItem_DocumentLibrary      Edm.String              PictureThumbnailURL            Null              ServerRedirectedURL            Null              ServerRedirectedEmbedURL            Null              ServerRedirectedPreviewURL            Null              FileExtension      txt      Edm.String              ContentTypeId      0x01010027E858607844AC42AD371DFAA2B2557C      Edm.String              ParentLink      http://url/DocLib/北方城市      Edm.String              ViewsLifeTime            Null              ViewsRecent            Null              SectionNames            Edm.String              SectionIndexes            Edm.String              SiteLogo            Null              SiteDescription            Null              deeplinks            Null              importance      0      Edm.Int64              SiteName      http://url      Edm.String              IsDocument      true      Edm.Boolean              LastModifiedTime      2013-08-21T02:22:46.0000000Z      Edm.DateTime              FileType      txt      Edm.String              IsContainer      false      Edm.Boolean              WebTemplate            Null              SecondaryFileExtension      txt      Edm.String              docaclmeta            Null              OriginalPath      http://url/DocLib/北方城市/北京.txt      Edm.String              PartitionId      0c37852b-34d0-418e-91c6-2ac25af4be5b      Edm.Guid              UrlZone      1      Edm.Int32              AAMEnabledManagedProperties  AttachmentURI;deeplinks;DefaultEncodingURL;ExternalMediaURL;HierarchyUrl;OrgParentUrls;OrgUrls;OriginalPath;ParentLink;Path;PictureThumbnailURL;PictureURL;PublishingImage;recommendedfor;ServerRedirectedEmbedURL;ServerRedirectedPreviewURL;ServerRedirectedURL;SiteLogo;SitePath;SPSiteURL;UserEncodingURL      Edm.String              RenderTemplateId      ~sitecollection/_catalogs/masterpage/Display Templates/Search/Item_Default.js      Edm.String              piSearchResultId      3_1      Edm.String      
        View Code

        4、解疑,我看到這個結果,很奇怪,為什么我的網站中有4條結果,REST返回了5條,詳細查看每個SimpleDateRow發現,最后一個居然是之前做BCS測試的時候的結果,XML附后。?

        Pathbdc3://blobdatacontent_blobdatacontent/Default/00000000%252D0000%252D0000%252D0000%252D000000000000/1394/BlobDataContent/1396?s_id=iAwAAAA==&s_ce=048g24810001020408000h20005sEdm.String

        ?

        三、?? Get 方式 - XML調用實例

        1、? 調用效果圖,如下:

        SharePoint Search REST API 使用實例教程_本站

        2、? 后臺方法:

        復制代碼
         1 public void gvDateBind() 2 { 3     string keywords = "'" + System.Web.HttpUtility.UrlEncode(tbKeyWord.Text) + "'"; 4     string strRes = "http://url/_api/search/query?querytext=" + keywords; 5  6     WebClient wc = new WebClient(); 7     wc.Encoding = System.Text.Encoding.UTF8; 8     NetworkCredential nc = new NetworkCredential("username", "password", "ad"); 9     wc.Credentials = nc;10     string str = wc.DownloadString(strRes);11 12     XmlDocument doc = new XmlDocument();13     doc.LoadXml(str);14     XmlNodeList xnodelist = doc.GetElementsByTagName("d:Rows");15     XmlNode node = xnodelist[0];16 17     DataTable dt = new DataTable();18     dt.Columns.Add("標題");19     dt.Columns.Add("作者");20     dt.Columns.Add("描述");21     dt.Columns.Add("鏈接");22 23     XmlNodeList xlist = node.ChildNodes;24 25     foreach (XmlNode xnode in xlist)26     {27         XmlNodeList nn = xnode.ChildNodes[0].ChildNodes;28         DataRow dr = dt.NewRow();29 30         foreach (XmlNode nnode in nn)31         {32             switch (nnode.ChildNodes[0].InnerText)33             {34                 case "Title":35                     dr["標題"] = nnode.ChildNodes[1].InnerText;36                     break;37                 case "Author":38                     dr["作者"] = nnode.ChildNodes[1].InnerText;39                     break;40                 case "HitHighlightedSummary":41                     dr["描述"] = nnode.ChildNodes[1].InnerText;42                     break;43                 case "Path":44                     dr["鏈接"] = nnode.ChildNodes[1].InnerText;45                     break;46             }47         }48         dt.Rows.Add(dr);49     }50 51     gvSearchResult.DataSource = dt;52     gvSearchResult.DataBind();53 }
        復制代碼

        Get方式-Xml調用示例

        ?四、?? POST方式 - JSON調用實例

        1、調用結果顯示

        SharePoint Search REST API 使用實例教程_本站

        ?

        2、核心代碼

        ?

        復制代碼
        $.ajax(               {                   url: http://url/_api/search/postquery,                   type: "Post",                   dataType: "application/json;odata=verbose",                   data: JSON.stringify({                       'request': {                           'Querytext': queryText,                           'StartRow': 1,                           'RowLimit': 8,                           'SelectProperties': {                               'results': ['Title', 'ContentSource', 'DisplayAuthor', 'Path']                           },                           'TrimDuplicates': true,                           'Refiners': 'companies,contentclass,FileType(filter=6/0/*)',                           //'RefinementFilters': { 'results': ['filetype:equals("txt")'] }                       }                   }),                   headers: {                       "accept": "application/json;odata=verbose",                       "content-type": "application/json;odata=verbose",                       "X-RequestDigest": xRequestDigest                   },                   complete: ProcessSearchResult               });
        復制代碼

        注:本來自己想寫個調用JSON的博客,但是看到CSDN上有人寫過了,自己就不寫了,把最重要的那段代碼貼給大家參考,大家有興趣可以參考下,博客地址附后!

        ?

        五、?? 常用的查詢參數:

        查詢關鍵字(querytext)

        http://server/_api/search/query?querytext='sharepoint'

        ?

        JSON實例:

        復制代碼
        {'__metadata' : {'type' : 'Microsoft.Office.Server.Search.REST.SearchRequest'},'Querytext' : 'sharepoint'}
        復制代碼

        ?

        起始行(StartRow)

        http://server/_api/search/query?querytext='sharepoint'&startrow=10

        ?

        JSON實例:

        復制代碼
        {'__metadata' : {'type' : 'Microsoft.Office.Server.Search.REST.SearchRequest'},'Querytext' : 'sharepoint','StartRow' : '10'}
        復制代碼

        ?

        返回行限制(RowLimit)

        http://server/_api/search/query?querytext='sharepoint'&rowlimit=30

        ?

        JSON實例:

        復制代碼
        {'__metadata' : {'type' : 'Microsoft.Office.Server.Search.REST.SearchRequest'},'Querytext' : 'sharepoint','RowLimit' : '30'}
        復制代碼

        ?

        選擇屬性(SelectProperties)

        http://server/_api/search/query?querytext='sharepoint'&selectproperties='Title,Author'

        ?

        JSON實例:

        復制代碼
        {'__metadata' : {'type' : 'Microsoft.Office.Server.Search.REST.SearchRequest'},'Querytext' : 'sharepoint','SelectProperties' : {    'results' : [          'Title,          Author'          ]}}
        復制代碼

        ?

        擴展名(RefinementFilters)

        http://server/_api/search/query?querytext='sharepoint'&refinementfilters='fileExtension:equals("docx")'

        ?

        JSON實例:

        復制代碼
        {'__metadata' : {'type' : 'Microsoft.Office.Server.Search.REST.SearchRequest'},'Querytext' : 'sharepoint','RefinementFilters' : {'results' : ['fileExtension:equals("docx")']}}
        復制代碼

        ?

        排序(SortList)

        http://server/_api/search/query?querytext='sharepoint'&sortlist='rank:descending,modifiedby:ascending'

        ?

        JSON實例:

        復制代碼
        {'__metadata' : {'type':'Microsoft.Office.Server.Search.REST.SearchRequest'},'Querytext' : 'sharepoint','SortList' :{    'results' : [        {                'Property':'Created',                'Direction': '0'        },        {                'Property':'FileExtension',                'Direction': '1'        }    ]}}
        復制代碼

        ?

        返回總長度(SummaryLength)

        http://server/_api/search/query?querytext='sharepoint'&summarylength=150

        ?

        JSON實例:

        復制代碼
        {'__metadata':{'type':'Microsoft.Office.Server.Search.REST.SearchRequest'},'Querytext' : 'sharepoint','Summarylength' : '150'}
        復制代碼
        Sharepoint 可以幫助企業用戶輕松完成日常工作。

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統下載排行

        主站蜘蛛池模板: 两性刺激生活片免费视频| 午夜男人一级毛片免费| 成人无码视频97免费| 精品无码无人网站免费视频| 中文字幕人成无码免费视频| 亚洲欧洲日产国码一级毛片 | 久久久久久AV无码免费网站下载| 国产精品色拉拉免费看| 亚洲av再在线观看| 亚洲国产精品成人久久久| 免费一区二区无码视频在线播放| aa毛片免费全部播放完整| 午夜毛片不卡高清免费| 久久精品熟女亚洲av麻豆| 84pao强力永久免费高清 | 亚洲二区在线视频| 久久国产福利免费| 亚洲VA成无码人在线观看天堂| 理论亚洲区美一区二区三区| 亚洲成A人片77777国产| 中文字幕成人免费高清在线视频 | 国产亚洲视频在线播放| 亚洲无mate20pro麻豆| 久久精品免费观看| 国外亚洲成AV人片在线观看| 在线观看免费播放av片| 亚洲中文字幕在线第六区| 99视频在线免费| 久久91亚洲人成电影网站| 免费国产va在线观看| 亚洲国产另类久久久精品小说| 猫咪免费人成网站在线观看入口| 67194成手机免费观看| 亚洲欧洲成人精品香蕉网| xvideos永久免费入口| 精品国产麻豆免费网站| 亚洲色图激情文学| 久久不见久久见免费影院| 亚洲jjzzjjzz在线播放| 中文字幕在线观看免费视频| 亚洲高清国产拍精品熟女|