0

Webサーバーでは、次の方法があります。

[WebMethod()]
public static string login(string userName, string password)
{
    if (usernName == "test" && password == "test")
    {
         return "validated";
    }
    return "error";
}

次のObjectiveCコードで接続しようとしています。

NSString *post = [NSString stringWithFormat:@"userName="test"&password="test"];
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];

NSString *serverURLString = @"http://myURL.aspx/login";
NSURL *serverURL = [NSURL URLWithString:serverURLString];

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:serverURL];
[request setHTTPMethod:@"POST"];

[request addValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setHTTPBody:postData];

NSHTTPURLResponse *urlResponse = nil;
NSError *error = nil;
NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&urlResponse error:&error];

NSLog(@"response data = %@", responseData);

私は無知な初心者の土地で迷子になり、最後の行が私のObjective Cコンソールで「検証済み」または「エラー」のいずれかを出力すると思いましたが、整数を返します(これは以前にこれを行ったことがある人には明らかです=))。

Objective CログでwebMethodの戻り値を確認する方法を教えてもらえますか?

-編集-正しいuserName/passwordの組み合わせを使用しているかどうかに関係なく、HTTP応答ステータスコードが200になることに気づきました。これは、問題が他の場所にあることを意味している可能性もありますか?

4

1 に答える 1

1

応答で返されたNSStringを使用して を作成できます。NSData例えば:

NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
于 2012-11-19T12:35:58.373 に答える