-1

您好,我正在尝试从 myapplication 上传我的图片,但无法这样做....我试过了

ASIFormDataRequest *theRequest = [ASIFormDataRequest requestWithURL:url];

NSString *nowTimestamp = [NSString stringWithFormat:@"%f",[[NSDate date] timeIntervalSince1970]];

[theRequest setPostValue:kApiKey forKey:@"api_key"];
[theRequest setPostValue:(float)[[NSDate date] timeIntervalSince1970] forKey:@"call_id"];
[theRequest setPostValue:@"1.0" forKey:@"v"];
[theRequest setData:[NSString stringWithString:@"abc"] forKey:@"status"]; 
[theRequest setPostValue:[NSString stringWithFormat:@"%lld",session1.uid] forKey:@"uid"];
 NSLog(@"%lld",session1.uid);

 NSString *strSig = [[NSString alloc] init];

strSig = [strSig stringByAppendingString:[NSString stringWithFormat:@"@=%@",@"api_key",kApiKey]];
StrSig = [strSig stringByAppendingString:[NSString stringWithFormat:@"@=%@",@"call_id",nowTimestamp]];
strSig = [strSig stringByAppendingString:[NSString stringWithFormat:@"%@=%@",@"v",@"1.0"]];
strSig = [strSig stringByAppendingString:[NSString stringWithFormat:@"%@=%@",@"uid",[NSString stringWithFormat:@"%lld",session1.uid]]];

strSig = [strSig stringByAppendingString:kApiSecret];

[theRequest setPostValue:[self md5:strSig] forKey:@"sig"];
[theRequest setURL:url];
[theRequest setRequestMethod:@"POST"];
[theRequest setPostFormat:ASIMultipartFormDataPostFormat]; 
[theRequest startSynchronous]; 

但它说签名不正确......我错了请帮助我......

4

1 回答 1

0

看到这个线程。如果“它”表示签名不正确,请检查生成 strSig 的行。以较小的块做事情,这样你就可以看到发生了什么,并将一些变量 NSLog 到控制台以提供帮助。如果上面的代码是直接复制/粘贴作业,则有一行使用“StrSig”而不是“strSig”,这可能会发出警告或错误,因为 Obj-C 区分大小写。

于 2010-03-21T21:55:08.643 回答