asp.net を使用して SharePoint Foundation 2010 から Web サービスを利用しようとしています。
401 無許可エラーが発生します。
これは、資格情報が欠落しているか無効であることを意味しますが、その理由がわかりません。
認証なしで標準ブラウザからWebサービスページにアクセスできます。これは、ユーザー/パスワードのチャレンジではありません。これは、サーバー自体とリモート クライアント ブラウザーの両方から機能します。
コードは次のとおりです。
Dim wsLists As New JEMS30LISTS.Lists
Dim dtTasks As New DataTable
Dim xmlDoc As New System.Xml.XmlDocument
Dim ndQuery, ndViewFields, ndQueryOptions, ndListItems As System.Xml.XmlNode
Dim szListName, szListsUrl, szUsername, szPassword, szDomain As String
szListsUrl = "https://demo.********.com/_vti_bin/Lists.asmx"
szUsername = "*********"
szPassword = "************"
szDomain = "***********"
ndQuery = xmlDoc.CreateNode(System.Xml.XmlNodeType.Element, "Query", "")
ndViewFields = xmlDoc.CreateNode(System.Xml.XmlNodeType.Element, "ViewFields", "")
ndQueryOptions = xmlDoc.CreateNode(System.Xml.XmlNodeType.Element, "QueryOptions", "")
ndQueryOptions.InnerXml = "<IncludeMandatoryColumns>FALSE</IncludeMandatoryColumns>" _
+ "<DateInUtc>TRUE</DateInUtc>"
If bAllFields = True Then
ndViewFields.InnerXml = ""
Else
ndViewFields.InnerXml = "<FieldRef Name=""TEAS_x0020_5_x0020_Task_x0020_Nu"" /> <FieldRef Name=""TEAS_x0020_5_x0020_SubTask"" /> <FieldRef Name=""TEAS_x0020_6_x0020_Task_x0020_Nu"" /> <FieldRef Name=""TEAS_x0020_6_x0020_Task_x0020_Nu0"" /> <FieldRef Name=""Shreds_x0020_Converted"" /> <FieldRef Name=""TEAS_x0020_6_x0020_Shred_x0020_P"" /> <FieldRef Name=""ProcessTask"" /> <FieldRef Name=""TEAS6Dept"" /> "
End If
ndQuery.InnerXml = "<OrderBy><FieldRef Name=""TEAS_x0020_5_x0020_Task_x0020_Nu"" Ascending=""True""></FieldRef></OrderBy>"
szListName = "CORs"
Try
Dim cache As New System.Net.CredentialCache
wsLists.Url = szListsUrl
Dim vUri As New Uri(wsLists.Url)
Dim vNW As New Net.NetworkCredential()
cache.Add(vUri, "windows", vNW)
wsLists.Credentials = cache
ndListItems = wsLists.GetListItems(szListName, Nothing, ndQuery, ndViewFields, 99999, ndQueryOptions, Nothing)
Catch ex As Exception
Response.Write("GetListItems: " + ex.Message + "<br>")
End Try
いくつかのユーザー名とパスワードの組み合わせを試しましたが、認証はまったく行われませんでした (ブラウザーからチャレンジされないため)。
何が欠けているのか誰か教えてもらえますか?
ありがとう