2017-03-06 9 views
-1

私は新しいsapui5アプリケーションを開発しています。私はInternet Explorerで自分のアプリケーションをテストしようとしています。Internet ExplorerのSapui5アプリケーションが動作しない

Google Chromeでテストすると問題はありません。 chrome.exeに次のコードがあることに注意してください。 - >--disable-web-security --user-data-dir

私がExplorerでアプリケーションを起動すると、最初のページは読み込まれません。

Firefoxでは、最初のページが読み込まれますが、アプリでナビゲートできません。

Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://my-app.es:port' is therefore not allowed access. The response had HTTP status code 401 

は私がゲートウェイにアプリをアップロードする必要があります:私はGoogleのChromeから--disable-web-security --user-data-dirのparamsを削除した場合

は、私は次のエラーを取得します。

ことができます誰かが私を助け?

ありがとうございます!

答えて

0

あなたのアプリケーションでクロス起源のリソースを使用しているように思われます。なぜそれが動作しないのですか?リソースが要求元のリソースと異なるドメインまたはポートに属している場合、要求はcross-origin要求です。 --disable-web-security --user-data-dirは、Chromeでのクロスオリジン要求のブロックを無効にするために使用されます。同様に、IEには、クロスオリジン要求を有効にするために使用できる機能があります。

Internet Explorer > Tools > Internet Options. Select the Security Tab & click on Custom Level button. In the Settings under Miscellaneous > Access data sources across domains, select Enable

これは開発環境では動作する可能性がありますが、実動シナリオでは理想的ではありません。

あなたはシステムをゲートウェイとゲートウェイを介して、すべてをアクセスするには2つの方法

  1. 移動し、あなたのすべてのリソースにこの問題を解決することができます。 UI5リソースurl( "resources/sap-ui-core.js")を使用して、ゲートウェイシステムからUI5ブートストラップを取得します。 OData要求には同じゲートウェイシステムを使用します。あなたが別のサーバーから外部リソースを取得している場合

  2. 、私は配置する必要があり、そのサーバー

    Access-Control-Allow-Origin: * 
    
+0

の応答ヘッダーにAccess control headersを追加する必要があります:アクセス・コントロール・Allow-原産地:* –

+0

あなたのコードに配置されません。使用しているリソースのサーバー上で有効にする必要があります。ここでどのように有効にする必要があるかは、これらのリソースを提供するサーバーによって異なります。 –

+0

どこからUI5リソースにアクセスしますか?ゲートウェイシステム、別のサーバーまたは外部のCDN? –

関連する問題