3

jqueryを使用してajax経由で送信されるフォームを含む単純なWebページがあります。デスクトップ ブラウザでフォームを送信するとフォームは正常に機能しますが、「chrome データ圧縮プロキシ」機能が有効になっているモバイル デバイスで Chrome を使用してフォームを送信すると、エラーが発生します。

次のエラー メッセージが表示されます。

このページは「chrome データ圧縮プロキシ経由で読み込めません。このページをリロードしてみてください。

少し調べてみたところ、このような「類似した」質問がいくつかあり、特にこれは特に役に立ちませんでした。

2 番目の質問は、「Chrome データ圧縮プロキシ」のリードによって回答されると思われます。2 番目の質問の回答で、Cache-Control ヘッダーを変換なしに設定するという提案を試しました。しかし、それは違いはありませんでした。

誰かが同様の問題を抱えていて、これを回避していますか?

これは、フォームを送信するために使用しているコードです。

$.ajax({
    type : "POST",
    url : "services/users/changePasswordUsingToken",
    data : {
        'token' : token,
        'md5pwd' : md5pwd
    },
    headers : {
        'Cache-Control': 'no-transform'
    },
    success : function(response, textStatus, xhr) {
        ...
    },
    error : function(xhr, status, error) {
        alert(xhr.responseText); //This page cannot be loaded via the "chrome data compression proxy. Try reloading this page.
    ...
});
4

2 に答える 2

4

私は Chrome 圧縮プロキシのテクニカル リードです。

このエラー メッセージは、DNS 解決エラーなどの何らかの理由でプロキシがサイトにアクセスできない場合、またはサイトがパブリック インターネット (イントラネットなど) にない場合に送信されます。通常、GET 要求の場合、ブラウザはプロキシを使用せずに URL を自動的に再読み込みできますが、POST ではこれができません。

このサイトがホストされている場所と、プライベート ネットワークの背後にあるかどうかについて、もう少し詳しく教えていただけますか? これについていくつかの報告を見てきましたが、一般的な解決策を見つけたいと思います。ありがとう。

于 2014-07-26T06:05:17.393 に答える
1

次のようなマシン名でモバイルからローカルサーバーにアクセスすることで同じ問題が発生しました: http://scabbiaza.local:3000

IP によるアクセスの使用を開始し、この問題を解消しました。

于 2015-03-16T08:11:02.507 に答える