httpsイントラネットサイトでNSURLRequestをWebサービスにするアプリがあります。オフィスネットワークに接続すると、認証が正常に行われ、これらのWebサービスコールを行うことができます。しかし、私が外部のネットワークにいる場合、アプリはこれらの電話をかけるために私を認証することはできません。オフィス外のWiFiネットワークでNSURLRequestが認証されない
私はHTTP投稿リクエストを使用しています。そして、私は会社の無線LANに乗っているときに動作するので、そのコードはうまくいきます。
私はWillSendRequestForAuthenticationChalllengeとcanAuthenticateAgainstProtectionSpaceを使用しようとしましたが、前者が呼び出されます。資格情報を正しく使用していますが、Webサービスからの「あなたはログアウトしました」という応答が得られます。
私は、イントラネットにログインするためのクリアテキスト認証が許可されていないと言われています。私もこれを使って試してみた
は:
あなたが書いたNSString *authStr = [NSString stringWithFormat:@"%@:%@", [self username], [self password]];
NSData *authData = [authStr dataUsingEncoding:NSASCIIStringEncoding];
NSString *authValue = [NSString stringWithFormat:@"Basic %@", [authData base64EncodingWithLineLength:80]];
[theRequest setValue:authValue forHTTPHeaderField:@"Authorization"];
オフィスネットワークの外ではっきりとアクセスできます。 Webブラウザにアクセスして試してみると、自分のユーザー名とパスワードを要求されてからログインします。エラーは「あなたはログアウトしました」というメッセージです –
NSURLRequestが戻ってくるエラーは何ですか? – prabodhprakash