我開始知道我們可以使用REST apis從SharePoint網站獲取數據。此外SharePoint還支持從2010年起的REST。我獲得了用於列出SharePoint中的數據及其詳細信息的API。它是「ListData.svc」。是否還有其他類似於我們可以驗證我們網站的API。我嘗試了它瀏覽器(listdata.svc),並在此之前,我登錄。如果我註銷並執行「siteUrl/_vti_bin/ListData.svc」,我無法得到結果,請求超時或有時它顯示網頁不可用。如果有人知道如何在iPhone應用程序的SharePoint的東西,請分享一些相同的東西。如何使用來自iOS應用程序的REST API對Microsoft SharePoint網站進行身份驗證
回答
閱讀原文:http://sharepointsemantics.com/2011/07/the-client-side-object-model-help-with-headless-authentication-in-sharepoint-online/請確保您閱讀了由Chris Johnson撰寫的鏈接文章,然後提供信息以解決您的身份驗證問題。
旁註,你幾乎必須在SharePoint端使用表單身份驗證。
以下是我通過http爲SharePoint 2010進行NTLM身份驗證的方式。它可以工作並返回任何來自listdata.svc的調用的JSON字典(例如,調用URL yourdomain/_vti_bin/listdata.svc/YourList):
抓取AFNetworking並按照說明進入XCode應用程序。
當您的項目中有AFNetworking編譯時,您需要繼承AFNetworking框架的AFHTTPClient類。例如。添加一個新的類到你的iOS XCode項目並選擇AFHTTPClient作爲它的對象類型。
一旦你的子類你喜歡的東西如下:
YourHTTPClient.h
#import "AFHTTPClient.h"
#import "AFJSONRequestOperation.h"
#import "AFNetworkActivityIndicatorManager.h"
typedef void(^OLClientSuccess) (AFJSONRequestOperation *operation, id responseObject);
typedef void(^OLClientFailure) (AFJSONRequestOperation *operation, NSError *error);
@interface OLHTTPClient : AFHTTPClient
{
NSString *strBASEURL;
NSString *strUser;
NSString *strPassword;
}
@property (nonatomic, retain) NSString *strUser;
@property (nonatomic, retain) NSString *strPassword;
@property (nonatomic, retain) NSString *strBASEURL;
+(id) sharedClient;
- (void)setUsername:(NSString *)username andPassword:(NSString *)password;
-(void) getStuff:(OLClientSuccess) success failure:(OLClientFailure) failure;
@end
將在YourHTTPClient.m文件,你可以有下面的代碼,但在這個.m文件就是您將實現自定義方法調用以從SharePoint獲取您的列表數據。請看下圖:
進行身份驗證的代碼片段從YourHTTPClient.m:
- (void)getPath:(NSString *)path parameters:(NSDictionary *)parameters
success:(void (^)(AFHTTPRequestOperation *operation, id responseObject))success
failure:(void (^)(AFHTTPRequestOperation *operation, NSError *error))failure
{
NSURLRequest *request = [self requestWithMethod:@"GET" path:path parameters:parameters];
AFHTTPRequestOperation *operation = [self HTTPRequestOperationWithRequest:request success:success failure:failure];
[operation setAuthenticationChallengeBlock:^(NSURLConnection *connection, NSURLAuthenticationChallenge *challenge) {
NSURLCredential *newCredential = [NSURLCredential credentialWithUser:self.User password:self.password persistence:NSURLCredentialPersistenceForSession];
[challenge.sender useCredential:newCredential forAuthenticationChallenge:challenge];
}];
[self enqueueHTTPRequestOperation:operation];
}
@end
我只是試圖與配置爲使用NTLM身份驗證在SharePoint 2010環境上面。如果您需要使用Kerberos進行身份驗證,則可能需要重新配置,但我懷疑它也可能使用AFNetworking。
看看這個項目,它支持SharePoint 2013 RestAPI.Its爲我工作,並非常確定它也適用於你。
https://github.com/jimmywim/SPRestAPI
默認情況下,SPRESTQuery提供XML格式的響應,如果你想在JSON響應,你將不得不寫在executeQuery方法這一行。
[apiRequest setValue:@"application/json;odata=verbose" forHTTPHeaderField:@"Accept"];
- 1. 使用REST API進行身份驗證
- 2. 對Spring Boot REST API進行身份驗證我的Ionic 3應用程序
- 3. 如何使用Java for Sharepoint 2016中的REST API進行身份驗證?
- 4. 使用Microsoft OAuth2對Yammer API進行身份驗證
- 5. 使用spring rest進行POST REST API的身份驗證模板
- 6. 使用Java對HP ALM 12 REST API進行身份驗證
- 7. 使用活動目錄進行網站和應用程序的身份驗證
- 8. ASP.NET應用程序未使用Windows身份驗證進行身份驗證
- 9. 如何從Android應用程序對REST Web服務進行身份驗證?
- 10. 在Ruby中使用REST API - 何時進行身份驗證?
- 11. 如何使用Firebase RESTful API對用戶進行身份驗證?
- 12. 如何使用iOS應用程序向Active Directory進行身份驗證
- 13. 如何使用Dropbox API從桌面應用程序進行身份驗證?
- 14. 使用Web API進行身份驗證
- 15. Google Data API:如何對桌面應用程序進行身份驗證
- 16. 如何使用Samba4中的用戶對PHP網站進行身份驗證AD
- 17. 如何登錄到由google + API使用python進行身份驗證的網站?
- 18. 如何使用Django REST框架進行身份驗證
- 19. 如何在ASP.Net MVC應用程序中使用來自WCF身份驗證服務的身份驗證Cookie
- 20. 如何使用API密鑰對GitHub進行身份驗證?
- 21. 如何使用Python對Bluemix CF API進行身份驗證
- 22. 如何使用express對API構建進行身份驗證?
- 23. 使用PHP對MS-Sharepoint用戶進行身份驗證
- 24. 如何在我的web應用程序中使用kentor身份驗證服務進行身份驗證
- 25. 如何使用Xamarin移動應用程序對Azure AD進行身份驗證
- 26. 如何使用AAD對xamarin.Forms應用程序進行身份驗證
- 27. 如何使用基於管理證書的身份驗證來對Azure進行REST API調用?
- 28. PhoneGap - 對遠程網站進行身份驗證的方法?
- 29. 如何使用PHP對遠程Microsoft Exchange 2010進行身份驗證
- 30. 爲使用Onelogin進行身份驗證的應用程序調用API?
我得到了這個答案,我以前的問題之一。這不是我問的那個。我需要關於REST API。它講述了CSOM,這是另一種數據訪問方法。 –
相同的技術可以用於REST調用。您將取回相同的Cookie並將它們附加到REST HTTP呼叫。我的博客帖子中的幫手代碼將幫助您獲取這些Cookie。 –