RESTKit response.url 更改了参数顺序

问题描述 投票:0回答:2

我正在使用 RESTKit 从rest-api 获取数据。

这是我为请求设置的 URL,这是请求关闭之前的日志:

2014-04-03 15:51:10.186 xxx[35745:60b] 刚刚发送 URL: /api/dspObjGetNewsList?action=coverage&count=30&start=0&open=0&user=xxx&unique=36027&type=all&country=瑞典,global&division=战略产业,区域销售和服务,汽车

然后我记录响应 URL。

- (void)request:(RKRequest*)request didLoadResponse:(RKResponse*)response {
    NSLog(@"xxx: %d, url: %@", [response statusCode], response.URL);

我明白了吗?

xxx:响应代码:200,网址:url/api/dspObjGetNewsList?unique=26791&type=all&division=Strategic%20Industries%2CRegional%20Sales%20and%20Service%2CAutomotive&user=xxx&action=coverage&open=0&country=Sweden%2Cglobal&count=30&start=0

为什么我在回复中收到不同的 URL? RESTKit 会修改我的 URL 吗?

ios objective-c restkit
2个回答
0
投票

您是否正确配置了HTTPClient?使用

- (id)initWithHTTPClient:(AFHTTPClient *)client
方法配置 HTTPClient。例如:

AFHTTPClient *HTTPClient = [AFHTTPClient clientWithBaseURL:[NSURL URLWithString:@"www.url.com"]];

0
投票

您的第一个日志似乎是 URL 的原始字符串。第二个日志似乎是该字符串的 % 转义 URL 版本。这不是 RestKit 的事情,而是 URL 加载系统的事情。某些字符需要转义,以便它们在 URL 中使用时有效。

例如,您的原始字符串中有许多空格。 URL 中不允许这样做,每个都必须更改为

%20

为什么参数更改顺序尚不清楚 - 这取决于您如何创建字符串并向 RestKit 提供参数。但是,顺序对于处理并不重要,因此您不必担心。

© www.soinside.com 2019 - 2024. All rights reserved.