我想在连接失败事件上重新执行NSURLRequest
。我想为现有的POST参数添加一个参数。
代码:
NSMutableString * postParams = [[NSMutableString alloc] initWithData:((NSData *)((NSURLRequest *)connection.originalRequest).HTTPBody) encoding:NSUTF8StringEncoding];
// If post parameters "retry" is not found in HTTP body
if ([postParams rangeOfString:@"retry="].location == NSNotFound)
{
// Append a string with parameter "retry" with value true.
[postParams stringByAppendingString:[NSString stringWithFormat:@"&retry=%d", true]];
NSLog(@"Modified params : %@", postParams);
}
在我记录其值时修改字符串中的参数后,它将保持不变。
如何将POST参数添加到现有请求?
答案 0 :(得分:1)
问题是您用于附加字符串的方法。
stringByAppendingString:
复制当前字符串,追加参数,并返回结果。它不会修改原始字符串。
在您的情况下进行的最简单修改可能只是使用appendString:
NSMutableString
方法。
[postParams appendString:[NSString stringWithFormat:@"&retry=%d", true]];