我正在编写一些服务器API。我正在使用RestKit,但我没有写过这个问题。我不明白为什么控制台请求有效,而我不是。请帮帮我。
-(void)uploadFile {
NSString *URLPath = [NSString stringWithFormat:@"https://api.interlabs.pro/v1/texts/23041/content"];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:[NSURL URLWithString:URLPath]];
[request setHTTPMethod:@"PUT"];
[request addValue: @"Bearer ewogICAgInR5cCI6ICJKV1QiLAogICAgImFsZyI6ICJIUzI1NiIKfQ.ewogICAgImlzcyI6ICJhcGkuaW50ZXJsYWJzLnBybyIsCiAgICAiaWF0IjogMTQ2MzY3ODg2NCwKICAgICJleHAiOiAxNDYzNjgyNDY0LAogICAgInN1YiI6IDgzCn0.SuvGXfsDDzpA5-qJtRUZi7uw98IqA8_axfTGcMVjZdw" forHTTPHeaderField: @"Authorization"];
NSError *err;
NSURLResponse *response;
NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&err];
NSString *resSrt = [[NSString alloc]initWithData:responseData encoding:NSASCIIStringEncoding];
NSLog(resSrt);
}
它仍然不起作用,但控制台工作完美
答案 0 :(得分:0)
代码工作正常,结果是令牌已过期。 但是你不应该使用像#34; NSURLConnection sendSynchronousRequest"这样的弃用方法,那么你应该检查错误,当处理来自互联网的结果时,它大部分时间都是utf8而不是ascii。然后,当记录字符串时,使用NSLog(@"%@",theString)以避免在theString的内容包含格式化说明符时出现问题。