2013-06-02 30 views

Trả lời

11

Không có quyền truy cập trực tiếp vào nó. Bạn thực sự nên hỏi tại sao bạn muốn đặt thời gian chờ tùy chỉnh.

Nếu bạn cần thay đổi, bạn nên phân loại RKObjectManager và ghi đè requestWithObject:. Việc triển khai của bạn chỉ có thể gọi là siêu và sau đó chỉnh sửa yêu cầu có thể thay đổi kết quả.

+0

Tôi không sử dụng requestWithObject trên Restkit. Tôi sử dụng [[RKObjectManager sharedManager] postObject .... Là requestWithObject luôn được gọi là cơ sở của Restkit? Có nghĩa là cuộc gọi postObject của tôi cuối cùng cũng sử dụng requestWithObject. Lý do cho việc thiết lập một thời gian chờ là tài nguyên Heroku đi ngủ khi không được sử dụng trong một thời gian nhất định. Nếu điều đó xảy ra tôi cần Restkit để chờ đợi cho Heroku quay lên (20 giây). – jdog

+0

Có, nó sẽ được gọi là kết quả của postObject: bởi vì nó được gọi bởi properObjectRequestOperationWithObject: được gọi bởi khá nhiều thứ. – Wain

8

Sau đây đã làm việc với tôi trong RestKit 0.20.3: Tôi tự xây dựng NSMutableRequest và đặt thời gian chờ cho yêu cầu này. Rất tiếc, không có cách nào để đặt thời gian chờ yêu cầu mặc định trong RestKit 0.20.x do chính sách của AFNetworking không hiển thị thuộc tính này.

NSMutableURLRequest *request = [objectManager requestWithObject:nil method:RKRequestMethodGET path:@"test.json" parameters:nil]; 

[request setTimeoutInterval:300]; // set the timeout for this request to 5 minutes 

RKManagedObjectRequestOperation *op = [[RKObjectManager sharedManager] managedObjectRequestOperationWithRequest:request managedObjectContext:[[[RKObjectManager sharedManager] managedObjectStore] mainQueueManagedObjectContext] success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) { 
    NSLog(@"Success, %d results loaded", [mappingResult count]); 
} failure:^(RKObjectRequestOperation *operation, NSError *error) { 
    NSLog(@"Fail"); 
}]; 

[[RKObjectManager sharedManager] enqueueObjectRequestOperation:op]; 
+1

@ Nhận xét của Wain bên dưới là câu trả lời tốt hơn vì nó sẽ áp dụng cho các phương thức * Object: built-in của RestKit (ví dụ: getObject: postObject: và putObject :). –

Các vấn đề liên quan