gpt4 book ai didi

vb.net - 在 VB.Net 中通过 SSL 调用 SharePoint Web 服务(401 未授权)

转载 作者:太空宇宙 更新时间:2023-11-03 15:07:20 25 4
gpt4 key购买 nike

我正在尝试调用 Lists.asmx SharePoint Web 服务的 AddAttachment,如果我通过 HTTP 调用 Web 服务,下面的代码可以正常工作。

        Dim img(MyFile.PostedFile.ContentLength - 1) As Byte
MyFile.PostedFile.InputStream.Read(img, 0, img.Length)

'Dim fStream As FileStream = File.OpenRead(FullFileName)
Dim fileName As String = MyFile.PostedFile.FileName.Substring(3)

Dim listService As New wsList.Lists()
Dim credentials As New System.Net.NetworkCredential(UserName, Password, Domain)

If Not SiteUrl.EndsWith("/") Then
SiteUrl += "/"
End If
SiteUrl += "_vti_bin/Lists.asmx"
'SiteUrl = SiteUrl.ToLower.Replace("http:", "https:")

listService.Url = SiteUrl
listService.Credentials = credentials

Dim addAttach As String = listService.AddAttachment(ListName, ItemId, fileName, img)

ReturnValue = True

但是如果我取消注释掉这一行

'SiteUrl = SiteUrl.ToLower.Replace("http:", "https:")

我将收到以下错误:请求失败,HTTP 状态为 401:未经授权

现在,如果我将上面的行注释掉,然后也注释掉这一行

listService.Credentials = credentials

我将收到相同的 401 错误(预期),因此似乎通过 HTTP 而不是 HTTPS 正确接受了凭据。谁能帮我解释一下这个问题,并对如何解决这个问题有任何想法?

提前致谢!

最佳答案

今天早上,我和我们的一位系统人员一起工作。他检查了一些 IIS 日志,发现尝试通过 HTTPS 访问 Web 服务时出错。他进入 Central Admin 并添加了一些备用访问映射以包含 HTTPS url。然后一切正常!

关于vb.net - 在 VB.Net 中通过 SSL 调用 SharePoint Web 服务(401 未授权),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3937153/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com