菜鸟教程小白 发表于 2022-12-13 14:34:46

ios - AFHTTPClient requestWithMethod ParameterEncoding


                                            <p><p>我想将 AFNetworking 用于带有一些参数的 HTTP Post 方法,并且两个值具有相同的参数。我试过了:</p>

<pre><code>AFHTTPClient *httpClient = [ initWithBaseURL:url];
NSDictionary *params = ;
NSMutableURLRequest *request = ;
</code></pre>

<p>我使用了 Charles Proxy,发现我的请求中缺少 value4。</p>

<p>然后我尝试了:</p>

<pre><code>NSString *parameter = @&#34;param1=value1&amp;param2=value2&amp;param3=value3&amp;param3=value4&#34;;
];
</code></pre>

<p>这奏效了。</p>

<p>现在我想知道我是在使用 AFNetworking 时做错了什么,还是这是 AFNetworking 的错误?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>您的问题不在于 AFNetworking,而在于 NSDictionary。您不能有两个具有相同键的条目。 </p>

<p>在这种情况下,它意味着:</p>

<pre><code>NSDictionary *params = ;
</code></pre>

<p>应该换成下面的</p>

<pre><code>NSDictionary *params = ;
</code></pre>

<p>将两个值组合为一个键。</p>

<p>在一个键中组合参数的另一种方法是使用 NSArray。例如:</p>

<pre><code>NSDictionary *params = , @&#34;param3&#34;, nil];
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - AFHTTPClient requestWithMethod ParameterEncoding,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/11384568/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/11384568/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - AFHTTPClient requestWithMethod ParameterEncoding