使用Objective C在用户名中使用反斜杠“\”进行基本授权

时间:2015-07-31 06:31:07

标签: ios objective-c authentication basic-authentication

我必须在我的https请求中使用基本授权。我使用以下代码:

NSString *authStr = [NSString stringWithFormat:@"%@:%@", @"p5\test", @"password"];
NSData *authData = [authStr dataUsingEncoding:NSUTF8StringEncoding];
NSString *base64String = [authData base64EncodedStringWithOptions:0];
NSString *authValue = [NSString stringWithFormat:@"Basic %@", base64String];
NSDictionary *data=@{@"Authorization":authValue};

但它总是给出未经授权的401错误。我怀疑可能是反斜杠创建问题的用户名。

1 个答案:

答案 0 :(得分:0)

非常确定NSString仍然使用与C字符串相同的特殊字符。尝试添加和额外的反斜杠将\ t(制表符)转换为\(反斜杠)