免責事項:
- 私はまだこれを自分で試していません。
- 私は
NSStream
/ CF(Read|Write)StreamRef
API を使用する初心者です。
それが邪魔にならないので、進むべき道はSystemConfiguration
フレームワーク、つまり関数を使用しているようSCDynamicStoreCopyProxies
です。
この関数は を返しますCFDictionaryRef
。これは、ストリームのkCFStreamPropertyHTTPProxy
-property として設定できます (他のプロキシ タイプは、プロトコルの同等のキーを使用して機能する必要があります)。
このプロパティを CoreFoundation レベルで設定することが必須なのか、それとも使用できるのかはまだわかりません-[NSStream setProperty:forKey:]
— 私は後者を強く想定していますが、繰り返しになりますが、多かれ少なかれこれらの API を今日真剣に調べ始めました… </p>
いずれにせよ、 Apple のCFNetworking Programming Guideには、このことをカバーする「Navigating Firewalls」というセクションがあり、これについてより詳細に説明しています。
アップデート
誰かがまだこれに興味を持っている場合に備えて、週末全体で見つけられなかった API があります。
iOS では、SCDynamicStore
API (私が投稿したリンクで参照されている) は存在しません。ただし、iOS 2.0 から存在し、10.6 から OS X に存在する 別のAPI があります。
CFProxySupport
CFProxySupport
フレームワークの一部ですが、CFNetwork
「CFNetwork プログラミング ガイド」のどこにも言及されていません。シンプルで使いやすいので残念です。
Apple のドキュメントにバグを報告 (rdar://problem/10491759)