Как подключиться к списку SharePoint с помощью Objective-C / Xcode? - PullRequest
2 голосов
/ 18 февраля 2012

Я пытаюсь подключиться к списку на сайте SharePoint 2010, используя Objective-C в xCode.Кто-нибудь может указать мне правильное направление здесь?Я очень хорошо знаком с разработкой в ​​SharePoint - это Objective-C, который создает проблемы.Спасибо ....

Ответы [ 4 ]

3 голосов
/ 19 февраля 2012

Доступны две службы: одна SOAP и одна REST.

Сервис SOAP называется Lists.aspx и доступен по адресу [адрес сайта] / _ vti_bin / Lists.asmx

Служба REST (фактически oData) называется ListData.svc и доступна по адресу [адрес сайта] / _ vti_bin / ListData.svc

В обоих случаях вам необходимо передать учетные данные с помощью сервисных вызовов, которые я не знаю, как сделать в Objective-C / XCode.

3 голосов
/ 18 февраля 2012

Лучшим способом было бы создать веб-сервис для предоставления нужной вам функциональности из SharePoint, на самом деле я считаю, что Sharepoint может уже иметь некоторые веб-сервисы для этого.

Затем, чтобы использовать его, если это SOAP, используйте sudzc.

0 голосов
/ 17 апреля 2015

Sharepoint 2010 и 2013 теперь имеют API RestFul, доступ к которому можно получить по адресу http://site_url/_api'.

Здесь вы можете добавить / _api / web / lists / GetByTitle ('list_name') и вывозможность получить содержимое списков.Вы можете сделать больше с этим API.Чтобы узнать больше о поддерживаемых операциях, посетите эту ссылку

0 голосов
/ 06 января 2013

Я нашел это где-то еще, но это должно стать отличным началом для вас

NSString *soapFormat = [NSString stringWithFormat:@"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"
                        "<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/\">\n"
                        "<soap:Body>\n"
                        "<GetListCollection xmlns=\"http://schemas.microsoft.com/sharepoint/soap/\" />\n"
                        "</soap:Body></soap:Envelope>\n"];


    NSLog(@"Request is : %@",soapFormat);

    NSURL *locationOfWebService = [NSURL URLWithString:@"http://192.168.0.114/_vti_bin/lists.asmx"];

    NSLog(@"Web url = %@",locationOfWebService);

    NSMutableURLRequest *theRequest = [[NSMutableURLRequest alloc]initWithURL:locationOfWebService];

    NSString *msgLength = [NSString stringWithFormat:@"%d",[soapFormat length]];


    [theRequest addValue:@"text/xml" forHTTPHeaderField:@"Content-Type"];
    [theRequest addValue:@"http://schemas.microsoft.com/sharepoint/soap/GetListCollection"
                            forHTTPHeaderField:@"SOAPAction"];


[theRequest addValue:msgLength forHTTPHeaderField:@"Content-Length"];
    [theRequest setHTTPMethod:@"POST"];
    //the below encoding is used to send data over the net
    [theRequest setHTTPBody:[soapFormat dataUsingEncoding:NSUTF8StringEncoding]];


    NSURLConnection *connect = [[NSURLConnection alloc]initWithRequest:theRequest delegate:self];

    if (connect) {
        webData = [[NSMutableData alloc]init];
    }
    else {
        NSLog(@"No Connection established");
    }
...