基本身份验证 - reskit -iOS

时间:2012-12-10 21:10:34

标签: iphone ios ios5

我想使用restKit api 我需要从iOS的Web服务获取信息(json)。我的Web服务具有基本身份验证

enter image description here

我尝试使用以下代码登录:

RKURL *baseURL = [RKURL URLWithBaseURLString:@"http://mysite.com"]; 
RKClient *client= [RKClient sharedClient]; 
    client.username = @"user"; 
    client.password = @"passw"; 
    client.authenticationType = RKRequestAuthenticationTypeHTTPBasic;

RKRequest * therequest = [client requestWithResourcePath:@"/authentication"]; 
    [therequest setMethod:RKRequestMethodPOST];                                       
    [therequest setDelegate:self];                               
    [therequest send]; 

但我无法得到它。

请...你能给我一个关于restKit基本认证的例子。

最诚挚的问候!

2 个答案:

答案 0 :(得分:0)

我用以下代码解决了这个问题:

 RKURL *baseURL = [RKURL URLWithBaseURLString:@"http://api.mysite.com"];
    RKObjectManager *objectManager = [RKObjectManager objectManagerWithBaseURL:baseURL];
    objectManager.client.baseURL = baseURL;    
    objectManager.client.username = @"user";
    objectManager.client.password = @"passw";

    objectManager.serializationMIMEType = RKMIMETypeXML;


    RKURL *URL = [RKURL URLWithBaseURL:[objectManager baseURL] resourcePath:@"/authentication"];

    NSLog(@"URL: %@", [URL absoluteString]);
    NSLog(@"resourcePath: %@", [URL resourcePath]);
    NSLog(@"query: %@", [URL query]);

    [objectManager loadObjectsAtResourcePath:[NSString stringWithFormat:@"%@?%@", [URL resourcePath], [URL query]] delegate:self];

我等待,因为asnwer会帮助某人

答案 1 :(得分:0)

首先感谢您的正确答案, 你能告诉我们网络服务的样子吗? 因为我自己做,但不能真正使用你的代码 这是我的网络服务

$UserName = $_GET['u'];
    $Password = $_GET['p'];

    include("Ldap.php");

    $ldap = new Ldap();

    if($ldap->authenticate($UserName, $Password))
 {
        $json = array('status'=>'OK');
    }
    else
    {
        $json = array('status'=>'ERROR');
    }