2011-08-02 23 views
1

HTTPダイジェスト認証を処理するためにasiHttpRequestを使用しようとしています。私は2つのテキストフィールドを持っています.1つは名前で、もう1つはパスワードです。およびユーザーID応答文字列。誰でも提供できますasiHttpRequestを使用したHTTPダイジェスト認証

答えて

0

ここでは、認証のためにGoogleにリクエストを送信する方法のサンプルコードを示します。あなたは消化のためにそれを変更することができます。それが役に立てば幸い。

NSString *username = @"[email protected]"; 
    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:

  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]; 
+0

uはそれを変更する方法を説明できますか?ありがとう – kevin

+0

上記ダイレクトダイジェスト認証の編集を参照してください。その最も単純なもの。私は前にtwangoo.comで認証されていません...ごめんなさい。 – Hadi

関連する問題