Objective c RestKit-与查询字符串的路径匹配

Objective c RestKit-与查询字符串的路径匹配,objective-c,restkit,restkit-0.20,Objective C,Restkit,Restkit 0.20,我有一个如下的请求: /products?page=:page&perPage=:perPage 如何构造路径匹配器,以便在调用时找到这些路径 [[RKObjectManager sharedManager] cancelAllObjectRequestOperationsWithMethod:RKRequestMethodGET matchingPathPattern:@"/products"]; 这似乎与此模式不匹配。如何设置我的匹配路径模式参数以匹配这些请求?我通常创建命名路由

我有一个如下的请求:

/products?page=:page&perPage=:perPage
如何构造路径匹配器,以便在调用时找到这些路径

[[RKObjectManager sharedManager] cancelAllObjectRequestOperationsWithMethod:RKRequestMethodGET matchingPathPattern:@"/products"];

这似乎与此模式不匹配。如何设置我的
匹配路径模式
参数以匹配这些请求?

我通常创建命名路由。Reskit router提供了许多不同的助手方法,这些方法将以多种方式简化任务。像这样创建命名路由

#define ProductsRoute  @"ProductsRoute"

RKRoute *productsRoute = [RKRoute routeWithName:ProductsRoute pathPattern:@"/products?page=:page&perPage=:perPage" method:RKRequestMethodGET];
将路由添加到routeSet

 [[[RKObjectManager sharedManager].router routeSet] addRoute:productsRoute];
现在,让我们创建一个helper方法,该方法将取消对路由的请求,如果它涉及到某个命名路由

- (void)cancelRequestToUrlWithRouteName:(NSString*)routeName{
 RKRoute *route = [[[[RKObjectManager sharedManager] router] routeSet] routeForName:routeName];
  [self cancelAllRequestWithMethod:route.method matchingPath:route.pathPattern];
}
然后,每当您想取消对某个url的请求时,就调用它

[self cancelRequestToUrlWithRouteName:ProductsRoute];
我希望这也适用于你的情况。
注意:我没有显示将ResponseDescriptor添加到objectManager。您可以正常添加响应描述符,并在使用时添加分页器映射。

您是否在URL查询中使用参数尝试过此操作?SoKit通常不处理查询部分中的任何参数。@Wain ya我不太确定如何将此应用于我的案例。是否有任何方法可以通配符my cancel,这样它将取消对/products的调用,但不会取消其他可能未完成的调用?路径模式本质上是通配符,但我认为它不会与查询参数一起工作。。。