【发布时间】:2020-11-04 00:52:28
【问题描述】:
我正在开发一种从 SharePoint Online 列表中获取数据的解决方案,但是当我尝试检索和执行查询时,出现了错误。错误是。
System.Net.WebException: '远程服务器返回错误:(403) Forbidden.'
我使用 4 个文本框(URL、用户、密码、名称列表)和一个 Datagridview。
Using context As ClientContext = New ClientContext(TextBox1.Text.Trim())
context.AuthenticationMode = ClientAuthenticationMode.[Default]
context.Credentials = New NetworkCredential(TextBoxName.Text.Trim(), TextBoxPassword.Text.Trim(), "https://example.sharepoint.com/sites/SPSite/")
Dim webObj As Web = context.Web
Dim listObj As List = webObj.Lists.GetByTitle(TextBoxLista.Text.Trim())
Dim cqObj As CamlQuery = CamlQuery.CreateAllItemsQuery(100)
Dim collObj As ListItemCollection = listObj.GetItems(cqObj)
context.Load(collObj)
context.ExecuteQuery() 'Line whit error
End Using
您能帮我知道错误的原因以及如何解决吗?
提前谢谢你。
问候。
【问题讨论】:
-
您能否提供更多关于哪一行代码引发异常的详细信息?它将帮助其他人分析您的问题。
-
@XingyuZhao,谢谢你的回答。该行是
context.ExecuteQuery(),发送消息System.Net.WebException: 'The remote server returned an error: (403) Forbidden.'。在我是所有者的网站中。 -
尝试使用 SharePointOnlineCredentials 处理握手,例如:context.Credentials = New SharePointOnlineCredentials("yourlogin@yoursite.onmicrosoft.com", passWord)
-
@XingyuZhao 准备好了,成功了,感谢您的支持和回答。我为其他需要它的同事添加答案。问候。
标签: vb.net sharepoint visual-studio-2019