我必须将 SOAP 信封发送到共享点 Web 服务以管理将文件上传到共享点。但我不想使用 C# 代码。
我使用 web 服务副本 (_vti_bin/copy.aspx)。
我发送带有标题 SOAPAction http://schemas.microsoft.com/sharepoint/soap/CopyIntoItems的信封
这是我发送的 SOAP 信封示例:
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<CopyIntoItems xmlns="http://schemas.microsoft.com/sharepoint/soap/">
<SourceUrl>test.txt</SourceUrl>
<DestinationUrls>
<string>[URLsite]/Files/test.txt</string>
</DestinationUrls>
<Stream>[stream of file]</Stream>
</CopyIntoItems>
</soap12:Body>
</soap12:Envelope>
在源代码中,我输入了文件名。对于目的地,我将网站的 url 与文件名放在应上传文件的位置。(并且在没有文件名的情况下进行了测试)对于流文件,它以 base 64 编码为测试文件:
dGVzdHR0dHR0dHR0dA==
它不起作用,所以我收到此错误:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<CopyIntoItemsResponse xmlns="http://schemas.microsoft.com/sharepoint/soap/">
<CopyIntoItemsResult>0</CopyIntoItemsResult>
<Results>
<CopyResult ErrorCode="Unknown" ErrorMessage="Object reference not set to an instance of an object." DestinationUrl="[URLsite]/Files/test.txt" />
</Results>
</CopyIntoItemsResponse>
</soap:Body>
</soap:Envelope>
我还测试了 DestinationUrl = "[URLsute] / Files" -> 我有同样的错误。如果你看到什么可能会阻塞......那将是完美的。
此外,我不太了解可以在信封中使用的 FieldInformation,可能应该用于设置保存文件的属性。一个小例子会对我有很大帮助。
顺便说一句,我很想获得激活 Sharepoint 批准电路的示例以及 Workflow.asmx Web 服务的几个示例。顺便说一句,如果您有一个使用 web 服务 Workflow.asmx 激活 Sharepoint 批准电路的示例,我很感兴趣。
非常感谢,
吉米