2012-03-13 2 views
1

Я пытаюсь загрузить контент на сайт SharePoint с помощью операции CopyIntoItems веб-службы Copy.asmx из одного из моих приложений iPhone.Получение 400 Bad Request при попытке загрузить содержимое на сайт sharepoint с помощью веб-службы Copy.asmx

Вот пример xml, который я пытаюсь выполнить POST.

<?xml version="1.0" encoding="utf-8"?> 
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> 
<soap:Body> 
<CopyIntoItems xmlns="http:"//schemas.microsoft.com/sharepoint/soap/"><SourceUrl>http://null</SourceUrl><DestinationUrls><string>mytestsite/Upload Library/Check_File_Upload.txt</string></DestinationUrls><Fields><FieldInformation Type="File" DisplayName="Name" InternalName="FileLeafRef" Value="Check_File_Upload.txt" /><FieldInformation Type="Guid" DisplayName="GUID" InternalName="GUID" Value="{21026DFC-E19E-470E-8B1D-7D7C5FA84FF3}" /></Fields><Stream>VGhpcyBpcyBhIHRlc3QgZmlsZSB0byBjaGVjayB1cGxvYWQgZnVuY3Rpb25hbGl0eS4gYW5kIGNoZWNraW5nIGFnYWluLg==</Stream></CopyIntoItems> 
</soap:Body> 
</soap:Envelope> 

Может ли кто-нибудь помочь мне разобраться с проблемой?

ответ

0

Я был в состоянии сделать это с помощью Java. Смотрите эту ветку

Gettting 400 Bad Request while uploading file to SharePoint 2010 using Copy.CopyIntoItems web service

Надеется, что это помогает.

Также приведено несколько очень полезных типов полей, которые я скомпилировал. Я использую SharePoint 2010

Выбор списка

fieldInfo.setDisplayName("Day Of Week"); 
fieldInfo.setType(FieldType.CHOICE); 
fieldInfo.setValue("Friday"); 

Мульти Выбор списка, обратите внимание, что каждое значение отделяется; #

fieldInfo.setDisplayName("Hobbies"); 
fieldInfo.setType(FieldType.MULTI_CHOICE); 
fieldInfo.setValue("Biking;#Reading"); 

Enterprise Ключевые слова,

fieldInfo.setDisplayName("Enterprise Keywords"); 
fieldInfo.setType(FieldType.NOTE); 
fieldInfo.setValue("-1;#wind;#-1;#turbine"); 

Управляемые метаданные. Важно, отметить, что отображаемое_имя необходимо добавить к «_0» и значение должно быть в формате -1 # SomeValue | Guid, как показано ниже

fieldInfo.setDisplayName("MyMetadata_0"); 
fieldInfo.setType(FieldType.NOTE); 
fieldInfo.setValue("-1;#wind|4c29faf0-bea6-4032-893f-d5aaea458728;#-1;#turbine|6e552448-77d1-4349-bc11-52debdcbc860"); 

Content Type. Вы можете получить идентификатор типа контента, просмотрев свойства типа контента и отметив идентификатор в URL-адресе, что-то вроде этого. Получить значение параметра, ctype https://eimsscnqa.sandia.gov/sites/DocLib026/_layouts/ManageContentType.aspx?ctype=0x0101005C02449B3F60DF42A78192F51AAD4A5202e

fieldInfo.setDisplayName("Content Type Id"); 
fieldInfo.setType(FieldType.TEXT); 
fieldInfo.setValue("0x0101005C02449B3F60DF42A78192F51AAD4A5202e"); 
Смежные вопросы