Safari 使用asiHttpRequest的HTTP摘要身份验证

Safari 使用asiHttpRequest的HTTP摘要身份验证,safari,Safari,我试图使用asiHttpRequest来处理HTTP摘要身份验证,我有两个文本字段,一个是name,另一个是password,当用户使用正确的名称和密码登录时,标签将显示auth和userid响应字符串。任何人都可以提供这是一个示例代码,说明你如何向谷歌发送认证请求。你可以改变它来消化。希望能有帮助 NSString *username = @"my.google.login@gmail.com"; NSString *password = @"mypassword123";

我试图使用asiHttpRequest来处理HTTP摘要身份验证,我有两个文本字段,一个是name,另一个是password,当用户使用正确的名称和密码登录时,标签将显示auth和userid响应字符串。任何人都可以提供

这是一个示例代码,说明你如何向谷歌发送认证请求。你可以改变它来消化。希望能有帮助

    NSString *username = @"my.google.login@gmail.com";
    NSString *password = @"mypassword123";
    NSString *loginUrl = @"https://www.google.com/accounts/ClientLogin?client=NNW-Mac";
    NSString *source = @"NNW-Mac"; //let's fake NetNewsWire
    NSString *continueUrl = @"http://www.google.com";

    ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString: loginUrl]]; // log in & get cookies
    [request addRequestHeader: @"User-Agent" value: @"NetNewsWire/3.2b25 (Mac OS X; http://www.newsgator.com/Individuals/NetNewsWire/)"];

    [request setPostValue: username forKey: @"Email"];
    [request setPostValue: password forKey: @"Passwd"];
    [request setPostValue: @"reader" forKey: @"service"];
    [request setPostValue: source forKey: @"source"];
    [request setPostValue: continueUrl forKey: @"continue"];

    [request setDelegate: self];
    [request setDidFailSelector: @selector(loginRequestFailed:)];
    [request setDidFinishSelector: @selector(loginRequestFinished:)];

    [request start];
编辑1:


你能解释一下如何改变它吗?感谢以上编辑直接摘要身份验证。这是最简单的一个。我以前没有通过twangoo.com的认证。。对不起,我帮不上忙了。
            NSString *username = @"Login info";
            NSString *password = @"Password";
            NSString *loginUrl = @"http://connect.twangoo.com";
            NSString *continueUrl = @"http://www.google.com";

            ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString: loginUrl]]; // log in & get cookies
    //Dont need it if u dont want to add any header value for the site
    //[request addRequestHeader: @"User-Agent" value: @"NetNewsWire/3.2b25 (Mac OS X; http://www.newsgator.com/Individuals/NetNewsWire/)"];

            [request setPostValue: username forKey: @"Login"];
            [request setPostValue: password forKey: @"Pwd"];

//Just for google api reader service u dont need it here..
//[request setPostValue: @"reader" forKey: @"service"];

            [request setDelegate: self];
            [request setDidFailSelector: @selector(loginRequestFailed:)];
            [request setDidFinishSelector: @selector(loginRequestFinished:)];

            [request start];