0

AFHTTPClient用来向 Django+Tastypie 应用程序发出请求。此应用APPEND_SLASH启用了该设置,这意味着如果 URL 不以斜杠结尾,则请求将重定向到附加斜杠的相同 URL。

现在我正在这样做:

[[AFHTTPClient sharedClient] getPath:@"entry" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {            

} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    NSLog(@"%@", error);
}];

生成的 URL 是http://www.example.com/api/v1/entry,它被重定向到http://www.example.com/api/v1/entry/。有没有办法告诉AFHTTPClient总是自动添加斜杠?

4

1 回答 1

1

你需要要么

  1. /始终在您的getPath:论点中提供尾随(如getPath:@"entry/"),或
  2. AFHTTPClient具有添加它的方法的子类。

这是#2的示例:

- (void)getPath:(NSString *)path 
     parameters:(NSDictionary *)parameters 
        success:(void (^)(AFHTTPRequestOperation *operation, id responseObject))success
        failure:(void (^)(AFHTTPRequestOperation *operation, NSError *error))failure
{
    if ([path length] > 0 && ![path hasSuffix:@"/"])
        path = [path stringByAppendingString:@"/"];

    [super getPath:path parameters:parameters success:success failure:failure];
}
于 2013-06-07T20:49:35.537 回答