簡體   English   中英

啟用FBA調用SharePoint 2013 REST API

[英]Calling SharePoint 2013 REST API with FBA Turned On

我有以下代碼,可以在關閉基於表單的身份驗證的情況下很好地工作,但是一旦我打開它,它就會停止工作:

        string baseURL = siteUrl + "/_api/";
        string uriString = "web/lists/GetByTitle('" + listName + "')/fields/getbyinternalnameortitle('" + displayName + "')";

        NetworkCredential cred = CredentialCache.DefaultNetworkCredentials;
        System.Net.Http.HttpClient client = new System.Net.Http.HttpClient(new HttpClientHandler()
        {
            Credentials = cred
        });

        client.BaseAddress = new Uri(baseURL);
        client.DefaultRequestHeaders.Add("Accept", "application/json;odata=verbose");

        ServicePointManager.ServerCertificateValidationCallback = delegate(object s, X509Certificate certificate, X509Chain chain,
                SslPolicyErrors sslPolicyErrors)
        {
            return true;
        };

        HttpResponseMessage resp = client.GetAsync(uriString).Result;
        string respString = resp.Content.ReadAsStringAsync().Result;

我得到的響應如下:

{StatusCode: 403, ReasonPhrase: 'Forbidden', Version: 1.1, Content: System.Net.Http.StreamContent, Headers:
{
Transfer-Encoding: chunked
X-SharePointHealthScore: 0 
X-Forms_Based_Auth_Required:...)

我嘗試了幾件事,包括在HttpClient Credentials對象上指定服務器場帳戶Windows身份驗證憑據,還嘗試了使用AuthenticationHeaderValue:

 client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", _FormatBasicAuth("domain", "username", "password"));

任何幫助將不勝感激。

對於遇到此問題的任何人,我都可以通過轉至“網站權限”並設置對整個網站的匿名訪問來解決。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM