AFNetworking 2.0 GETリクエストへのヘッダ追加
2023-07-06 08:28:39
質問
AFNetworking 2.0を使い始めたばかりですが、HTTP Getリクエストにどのようにヘッダを入れるのか疑問に思っています。ドキュメントでは、このように GET をセットアップします。
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
NSDictionary *parameters = @{@"foo": @"bar"};
[manager POST:@"http://example.com/resources.json" parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"JSON: %@", responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@", error);
}];
しかし、私たちが扱っているのは
NSURLRequests
HTTP Headersを設定する方法がよくわかりません。
何か手助けがあれば、よろしくお願いします。
よろしくお願いします。
マイク
どのように解決するのですか?
AFNetworking 2.0 の素晴らしいドキュメントは、これを見つけるのが少し難しいのですが、そこにあります。そのため
AFHTTPRequestSerializer
は
-setValue:forHTTPHeaderField:
.
あるいは、彼らの推奨する方法に従って
AFHTTPSessionManager
から派生したセッションマネージャーを作成する場合、そのクラスは各リクエストのヘッダーを修正するメソッドをオーバーライドすることができます。
-dataTaskWithRequest:completionHandler:
. 私はこれを使用してリクエストを検査し、ケースバイケースでヘッダーを変更します。また、ネットワークに対する責任をそのマネージャに保持するため、シリアライザを変更するよりもこれを好みます (そしてシングルトンの混乱を回避します)。
- (NSURLSessionDataTask *)dataTaskWithRequest:(NSURLRequest *)request completionHandler:(void (^)(NSURLResponse *, id, NSError *))completionHandler
{
static NSString *deviceId;
if(!deviceId)
{
deviceId = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
}
NSMutableURLRequest *req = (NSMutableURLRequest *)request;
// Give each request a unique ID for tracing
NSString *reqId = [NSString stringWithFormat:@"%@+%@", deviceId, [[NSUUID UUID] UUIDString] ];
[req setValue:reqId forHTTPHeaderField:"x-myapp-requestId"];
return [super dataTaskWithRequest:req completionHandler:completionHandler];
}
関連
-
[解決済み】リクエストに失敗しました: 受け入れられない content-type: text/html AFNetworking 2.0 を使用しています。
-
[解決済み】@try - Objective-Cのcatchブロック
-
[解決済み] .xibファイルと.storyboardの違いは何ですか?
-
[解決済み] iPhone Safari ウェブアプリでリンクを新しいウィンドウで開く
-
[解決済み] UIWebViewの背景がクリアカラーに設定されているが、透明になっていない
-
[解決済み] CALayerのanchorPointを変更すると、ビューが移動します。
-
[解決済み] AppDelegate.mで画面上に現在表示されているUIViewControllerを取得する。
-
[解決済み] iPhoneでNSStringをAES暗号化する方法
-
[解決済み] CALayersを使ったUIViewの丸め方 - 角の一部だけ - How?
-
[解決済み] AFNetworking 投稿のお願い
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] UINavigationControllerに右ボタンを追加する方法は?
-
[解決済み] モバイルSafari(iPhone)でテキストエリアのインナーシャドウを除去する
-
[解決済み] エラー : サービスは無効です
-
[解決済み] iPhoneのSafariで<body>に適用したoverflow:hiddenは機能するのか?
-
[解決済み] UIImageViewのコーナー半径の設定がうまくいかない
-
[解決済み] position: iPadとiPhoneで固定が効かない。
-
[解決済み] Xcodeは私のiOSデバイスを見ませんが、iTunesは見ます。
-
[解決済み] オプションのメソッドを持つプロトコルを作成するには?
-
[解決済み] iPhoneシミュレーターでカメラをテストするには?
-
[解決済み] iPhoneのデータ使用量のトラッキング/モニタリング