2

AFNetworking 2.0 を使用 - NSDictionary パラメータを使用して get リクエストを実行する場合 - パラメータの 1 つに % が含まれています - URL をエンコードするときに、AFNetworking が % の前に 25 を入れているようです - とにかくこの prom の発生を止める方法はありますか?

4

1 に答える 1

5

%URL エンコードされた文字をマークするために使用されます。たとえば、%20is はスペース、%3Dis=などです。エンコードされる文字とその理由について詳しくは、こちらをご覧ください。パーセント記号は、他の文字を URL エンコードするために使用されるため、エンコードする必要があります。(そうしないと、後続の 2 つの文字が正しく解釈されません。)

したがって、エンコーディングは期待%どおりの%25動作です。サーバーがこれを適切に解析していない場合、サーバーは上記のリンク先のドキュメントで概説されている標準に準拠していません。

つまり、この動作を本当にオーバーライドしたい場合は、AFURLRequestSerializationすべてのエンコーディング ロジックを含む をサブクラス化することでオーバーライドできます。詳細については、requestSerializerプロパティをAFHTTPRequestOperationManager確認できます。

于 2013-11-01T14:21:01.750 に答える