0

私は FB アプリを開発中です。これは、通常のデスクトップ FB サイト (周囲の FB カラーリングを使用) で実行できるようにする必要があり、モバイル デバイスのブラウザー (HTML5 と Bootstrap を使用してレイアウトを調整しています)デバイス)、iOS および Android のネイティブ モバイル Facebook アプリ内。

特に、この最後のシナリオ - MBP で開発しようとしており、隣の Web サーバー ボックスを指すローカル ドメイン名 (ホストで設定) を使用しています。これを iOS デバイスから機能させるために、MBP で Charles をプロキシとして実行し、iPhone の Wi-Fi プロキシ設定を更新して、iPhone のすべての http リクエストが Charles を介して送信されるようにしました。したがって、iPhone はローカライズされたドメインも使用できます。名前。

モバイル FB Web サイトでテストする場合、FB モバイル Web サイトを作成したテスト アプリに移動すると、新しいサファリ タブでキャンバスが起動し、正常に動作します。ただし、iOS ネイティブ FB アプリ内で、アプリに移動すると、

「申し訳ありませんが、エラーが発生しました」

キャンバスのコンテンツがあるべき場所の代わりにメッセージが表示されます (下のリンクの画像を参照)。

iPhoneのスクリーングラブ

FB は https キャンバス URL を強制するため、https を提供できるように、Web サーバーの組み込みの自己認証証明書を使用しています。Safari ブラウザーでは、最初に信頼できない証明書の警告が表示されますが、それを受け入れてから、html を使用しても問題はありません。

他の誰かがこの問題を見て、それを回避する方法を知っていますか? 私は、FB アプリが信頼できない証明書に問題を抱えていると想定していますが、ネイティブ アプリが (プロキシ経由で) ローカルに提供された URL を呼び出しているため、問題が発生する理由がわかりません (FB アプリが受け入れないように設定されている可能性があります)。信頼されていない証明書?)

iOS アプリ内で自分のコードをテストする必要があり、そうしないと、FB が自分のコードで動作することをクライアントに証明できません。

乾杯

リー

(ps 何か問題が発生した場合に備えて、ローカルの wifi プロキシの代わりに 3G を使用してみましたが、ネイティブの iOS FB アプリではまだ機能しませんでした)

4

1 に答える 1

0

問題は、アプリの設定で指定したモバイル URL がhttpsを使用するように設定されていたためであることがわかりました。おそらくこれは、ネイティブ アプリが信頼されていない SSL 証明書を受け入れないためです (これは、信頼されていない証明書を受け入れることができるため、おそらくブラウザーで問題がなかった理由でもあります)。

プロトコルを http に変更すると、問題が解決しました。奇妙なことに、Facebook はモバイル アプリの URL に https を使用することを主張していないため、http を使用しても問題はありませんでした。

于 2012-06-11T07:10:41.787 に答える