【发布时间】:2014-09-04 05:49:39
【问题描述】:
我在jstring 中获取cookie 值。服务器将其作为 base64encoded UTF8 字符串发送。我比较了服务器和我端的字符串,我得到了完全相同的字符串。
现在我需要用n= 作为前缀和; 作为后缀来装饰这个值。 (我在代码的 第 2 行 中所做的)。
如果我不使用行号。 1,字符串对 Java 服务器变为空。否则服务器正在获得价值。
jstring = [jstring stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString *cookieVal=[NSString stringWithFormat:@"n=%@%@",jstring,@";"];
[self.requestSerializer setValue:cookieVal forHTTPHeaderField:@"Cookie"];
我们在 iOS 中使用AFNetworking 进行请求和响应。我们观察到非常奇怪的模式,
如果字符串包含/(正斜杠),那么我们会在Java 服务器上得到填充错误,如果字符串不包含/,那么字符串将按要求运行。
正如您在第 1 行中看到的那样。 3,我们将此值作为 http/https 请求的标头发送。
我尝试了很多东西,比如this(用我的字符串尝试了最后一个代码。)。另外,尝试使用不同的编码,但问题仍然存在。
【问题讨论】:
标签: java ios http encoding afnetworking