0

プライベートな Web サービスに問題があります。この Web サービスにアクセスするには、ユーザー名が必要です。どうすれば Web サービス内にアクセスできますか。何か提案はありますか?

何かを視覚化するには -- http://www.test.com/event (これは一例です)

-(void)startConnection
{
    NSString *urlString = GET_EVENT_URL_STRING;

    NSURL *url = [NSURL URLWithString:urlString];

    if (!url)
    {
        NSString *reason = [NSString stringWithFormat:@"Could not create URL from string %@", GET_EVENT_URL_STRING];
        [self.delegate didGetEventInCorrect:reason];
        return;
    }

        theRequest = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval: 30.0];

    // Set the HTTP method of the request to POST
    [theRequest setHTTPMethod:@"POST"];


    if (!theRequest)
    {
        NSString *reason = [NSString stringWithFormat:@"Could not create URL request from string %@", GET_EVENT_URL_STRING];
        [self.delegate didGetEventInCorrect:reason];
        return;
    }

    theConnection = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self];

    if (!theConnection)
    {
        NSString *reason = [NSString stringWithFormat:@"URL connection failed for string %@", GET_EVENT_URL_STRING];
        [self.delegate didGetEventInCorrect:reason];
        return;
    }

    if (theConnection)
    {
        myData = [[NSMutableData alloc]init];
    }
}

たとえば、このリンクをクリックすると、ユーザー名とパスワード画面を含むアラートが 1 つ表示されます。アクセスできる情報を入力すると、Web サービスに接続するためのこのコードは、どうすれば管理できますか?

4

1 に答える 1

1

オブジェクトに認証ヘッダーを追加する必要がありtheRequestます。

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"];
于 2012-12-03T23:07:19.463 に答える