はただ、これはv0.20で行うことができる方法を考え出すしばらく過ごした私はそれを使用し、それが正常に動作します。私が知る限り、AFNetworkingソースコードに入らずに直接ベースURLを変更することはできません。 缶新しいHTTPClient
を作成して設定しましたが、おそらくRestkitがをセットアップしたときにAFKetworkingのHTTPClient
でいくつかの追加設定をしていて、クライアントを直接設定しているためそれ。
このソリューションは、新しいbaseURLで別のRKObjectManager
を作成し、ディスクリプタを再追加することを思いついたものです。また、シリアライズとヘッダーのタイプを再度設定する必要があります。
NSString *urlString = @"http://www.something.com/api";
RKObjectManager *newManager = [RKObjectManager managerWithBaseURL:[NSURL URLWithString:urlString]];
[newManager setRequestSerializationMIMEType:RKMIMETypeJSON];
[newManager setAcceptHeaderWithMIMEType:RKMIMETypeJSON];
[newManager addResponseDescriptorsFromArray:[RKObjectManager sharedManager].responseDescriptors];
[newManager addRequestDescriptorsFromArray:[RKObjectManager sharedManager].requestDescriptors];
[RKObjectManager setSharedManager:newManager];
関連資料:Using Multiple Base URLs in RestKit
真剣に? baseUrlを変更するだけですべてのディスクリプタを再追加する必要がありますか?編集:私は、上記のコードを実装し、それを移動すると推測するので、依頼がまだ実行されているなどの間にベースURLを変更したくないため、理由を参照してください、ドキュメントを読んだ後OK。 – deepwinter