私はずっと見つめていましたが、これを理解できないようです。私が見るJSONの例はどれもURLにメソッド名が含まれていないので、それが問題になる可能性があると思います。これが私のコードです:
NSString *username = @"xxxx";
NSString *password = @"xxxx";
NSString *loginURL = @"http://www.xxxxxx.com/services/api/rest/json?method=xxxxxx.auth.gettoken";
NSURL *url = [NSURL URLWithString:loginURL];
NSString *JSONString = [NSString stringWithFormat:@"{\"username\":\"%@\",\"password\":\"%@\"}", username, password];
NSData *JSONBody = [JSONString dataUsingEncoding:NSUTF8StringEncoding];
NSMutableURLRequest *loginRequest = [[NSMutableURLRequest alloc] initWithURL:url];
loginRequest.HTTPMethod = @"POST";
loginRequest.HTTPBody = JSONBody;
NSOperationQueue *queue = [NSOperationQueue new];
[NSURLConnection sendAsynchronousRequest:loginRequest
queue:queue
completionHandler:^(NSURLResponse *response, NSData *data, NSError *error){
// Manage the response here.
NSString *txt = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
NSLog(@"%@", txt);
}];
SquidManを使用してreuestをスヌーピングしていますが、アクセスログリストが次のようになっていることに気付きました:www.xxxxx.com/services/api/rest/json?--DIRECT / .....メソッド名がありません。これにSquidManを使用するのはこれが初めてですが、あると思います。
私が返すメッセージは、パラメータのユーザー名が欠落しているということです。
前もって感謝します。