Usando AFIncrementalStore con un token de Auth

Estoy trabajando en un cliente iOS para App.net , y me gustaría utilizar AFIncrementalStore para sincronizar el service web con mi implementación de Core Data en la aplicación.

He conseguido que los dos funcionen para requestes de API que no requieren un token de authentication, pero no puedo entender cómo usar el token de authentication con AFIncrementalStore.

En otras palabras, soy capaz de derribar el feed global, ya que no requiere auth:

https://alpha-api.app.net/stream/0/posts/stream/global

… sin embargo, para get la transmisión de un usuario, necesita auth (notará que este enlace da un error):

https://alpha-api.app.net/stream/0/posts/stream

Entiendo que necesito agregar un auth_token al final de la llamada API, pero no estoy seguro de cómo hacerlo usando AFIncrementalStore.

Actualización: aquí está el fragment de código que actualmente recibe la transmisión global:

Este es un método extraído directamente del proyecto de ejemplo App.net incluido en AFIncrementalStore .

 -(NSURLRequest *)requestForFetchRequest:(NSFetchRequest *)fetchRequest withContext:(NSManagedObjectContext *)context { NSMutableURLRequest *mutableURLRequest = nil; if ([fetchRequest.entityName isEqualToString:@"Post"]) { mutableURLRequest = [self requestWithMethod:@"GET" path:@"stream/0/posts/stream/global" parameters:nil]; } return mutableURLRequest; } 

Todo lo que tiene que ver con el caso anterior para modificarlo para usar correctamente un token de acceso es agregar parameters a la request en lugar de pasar a cero.

Para build los parameters simplemente haga un NSDictionary con las keys y los valores que necesita. Por ejemplo, en algunos de mi código de App.net tengo esto

 NSDictionary *params = @{@"access_token": token}; 

Con las nuevas directivas del comstackdor, este NSDictionary un NSDictionary con una sola key (en este caso 'access_token') con el valor en el token NSString .

Después de que tenga esto, simplemente haga su request de algo así:

 [self requestWithMethod:@"GET" path:@"stream/0/posts/stream" parameters:params]; 

Para pasar los parameters en la request.

¡Déjame saber si esto no es lo suficientemente claro!

    Intereting Posts