ios - 如何使用数组作为 header 和 AFNetworking 进行 POST
<p><p>这是标题:</p>
<pre><code> "url": "{{host}}/images/bla",
"method": "POST",
"header": [
{
"key": "Content-Type",
"value": "application/json",
"description": ""
},
{
"key": "Authorization",
"value": "Bearer token",
"description": ""
}
],
"body": { ... }
</code></pre>
<p>我尝试分两种情况解决:</p>
<p><strong>案例 1</strong>(崩溃):</p>
<pre><code>NSDictionary *headerDict = @{@"key": @"Content-Type",
@"value": @"application/json",
@"description": @""};
NSDictionary *headerDict1 = @{@"key": @"Authorization",
@"value": kBearerKey,
@"description": @""};
NSArray *headerArray = @;
;
</code></pre>
<p><strong>案例 2</strong>(不会崩溃但也不起作用):</p>
<pre><code>weakSelf.requestOperationManager.requestSerializer = ;
;
;
;
;
</code></pre>
<p>无论如何,在 <em>Case 1</em> 中会生成一个警告(并且也会导致崩溃),因为 <code>setValue</code> 应该是 <code>NSString</code> 而不是 <code> NSArray</code>.</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>例如,您可以将 NSMutableDictionary 中的所有 header 值保留为键/值对</p>
<pre><code>NSDictionary *headersDict = @{@"Content-Type": @"application/json",
@"Authorization": kBearerKey };
</code></pre>
<p>然后你可以迭代键值并设置http头</p>
<pre><code>[headersDict enumerateKeysAndObjectsUsingBlock:^(NSString *key, NSString *obj, BOOL *stop) {
;
}];
</code></pre>
<p>在您的情况下,您使用的是数组。您可以迭代数组并设置 header 值,希望这会有所帮助。</p>
<pre><code>for (NSDictionary *dict in headerArray) {
NSString *key = ;
NSString *value = ;
;
}
</code></pre></p>
<p style="font-size: 20px;">关于ios - 如何使用数组作为 header 和 AFNetworking 进行 POST,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/44650789/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/44650789/
</a>
</p>
页:
[1]