0

サーバー側の言語として PHP を使用して、Adobe Air アプリに取り組んでいます。

amfphp を使用して AMF でデータを転送していますが、うまくいきました。

最近、codeigniter フレームワークを利用することにしました。amfphp と codeigniter の統合に必要以上に時間がかかったため、Zend_AMF をダウンロードしました。

いくつかのチュートリアルを行った後、zend_amf + codeigniter をセットアップすることができました。

ただし、フレックスで次のエラーが発生します

"faultCode:Client.Error.MessageSend faultString:'Send failed'        
 faultDetail:'Channel.Connect.Failed error NetConnection.Call.BadVersion: : 
 url: 'http://127.0.0.1/project/index.php/amf/gateway/gateway/''

そこで、http プロキシ アプリケーションを使用して、通話と返される内容を監視することにしました。Charles は、AMF データを適切に解析するため、最適な選択肢のように思われました。残念ながら、Air アプリからのリモート コールは charles に表示されません。

Air アプリケーションはデフォルトのシステム プロキシ設定を使用するため、プロキシ設定を変更する方法がないことを知りました。システム全体に影響があることを知ったので、Internet Explorer のプロキシ設定を更新しました。この設定を変更しても、まだ機能しません。

ただし、フィドラー(http://fiddler2.com)をダウンロードしました。AMF データを適切に解析しませんが、http 要求をログに記録します。

チャールズがリクエストをログに記録していない理由についてのポインタは、最も高く評価されます

4

1 に答える 1

3

これは、localhost のトラフィックを確認する場合の一般的な問題です。Charles Proxy FAQ に記載されている回避策があります。

一部のシステムは、localhost トラフィックにプロキシを使用しないようにハード コードされています。具体的には、IE 7 および .Net アプリケーションにはこの機能があります。

回避策は、代わりにに接続するhttp://localhost./test/ことです (localhost の後の . に注意してください)。これは、通常は localhost と同じように機能しますが、Charles を経由するという利点があります。

または、localhost をマシンの名前またはローカル リンクの IP アドレス (例: 192.168.1.2) に置き換えることもできます。http://localhost/test/だから、あなたにつながる のではなく、http://machinename/test/

于 2013-04-04T08:29:42.153 に答える