17

特定の車で実行するために最初に作成された HTML5/JavaScript アプリがあります。基本的に、顧客への簡単なデモのために、ブラウザーで実行するようにアプリをセットアップする必要があります。

Same Origin Policy が原因で問題を引き起こしている jQuery .ajax を使用しています。デスクトップ ブラウザでこれを無効にする方法はたくさんありますが、モバイル ブラウザでは無効にできません。

私の目標は、Mobile Safari の iPad でアプリのデモを行うことです。iPad で同一オリジン ポリシーを一時的に無効にする方法はありますか?

4

5 に答える 5

1

煎茶アプリでも同じ問題がありました。javascript ajax呼び出しにベースパスを設定することで解決しました。例:

var BASEPATH = 'http://192.168.1.200/myapp';

$.ajax({
  url: BASEPATH+'/someaction'
});

そして、モバイルから私はそれにアクセスしますhttp://192.168.1.200/myapp

私の問題は、モバイルからは IP でのみアクセスできるが、ajax 呼び出しは localhost を指していたことです。

このトリックが役立つことを願っています。

于 2014-08-26T13:01:15.800 に答える
0

ajax 呼び出しで JSONP を使用してみてください。同一オリジン ポリシーをバイパスします。

http://learn.jquery.com/ajax/working-with-jsonp/

于 2014-07-25T08:23:37.153 に答える
0

ファイル プロトコルではなく、Web サーバーを実行する必要があります。

于 2014-01-04T09:48:41.043 に答える
0

基本的に、ヘッダーが必要です。

このコードを、クロス ドメイン リクエストを送信するページの上部に配置します。

<?php header("Access-Control-Allow-Origin: *"); ?>

* には注意してください。これにより、任意の Web サイトがそのヘッダーの送信元のページにリクエストを送信できるようになります。

* は、example.com、example.net などのドメインに置き換えることができます。

于 2014-03-08T14:49:10.577 に答える
-1

基本的に同じオリジンヘッダーを削除するパブリックプロキシへのajax呼び出しを使用すると、Javascriptで可能になります。または、ajax を使用して呼び出しを行う php curl get ページを作成することもできます。このコードについては、次のブログ投稿を確認してください。

http://thewebtimes.tumblr.com/post/90549614884/access-forbidden-webpages-with-javascript

于 2014-07-23T03:57:42.503 に答える