我一直在寻找,似乎无法弄清楚这一点。我看到的所有 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 窥探请求,我注意到访问日志列出:www.xxxxx.com/services/api/rest/json? - DIRECT/..... 方法名称不存在,这是我第一次为此使用 SquidMan,但我认为它会存在。
我得到的消息是参数用户名丢失。
先感谢您。